Basic Directory Layout

Edit Package filesystem

This package installs the basic directory structure. It also includes
the home directories of system users.

Refresh
Refresh
Source Files
Filename Size Changed
LICENSE.txt 0000001023 1023 Bytes
directory.list 0000005675 5.54 KB
directory.list64 0000000190 190 Bytes
filesystem.changes 0000053458 52.2 KB
filesystem.spec 0000005804 5.67 KB
ghost.list 0000000085 85 Bytes
languages 0000000616 616 Bytes
languages.man 0000000072 72 Bytes
Revision 123 (latest revision is 172)
Stephan Kulow's avatar Stephan Kulow (coolo) accepted request 247690 from Ludwig Nussel's avatar Ludwig Nussel (lnussel) (revision 123)
- drop /media directory (bnc#890198)

- make /run/lock %ghost to fix build failure

- make /var/run and /var/lock just ghost entries and create them
  if they do not exist at all and rely on dracut hooks to
  actually replace directories with symlinks there (bnc#874748) 

- add vscan user to ignore home list 

- change /sys to mode 0555 (bnc#871640) 

- make /var/lock a symlink to /run/lock (bnc#867873) 

- use lazy umount 

- use os.execute("umount ...") instead of posix.umount("...")
  bnc#866964 

- change pre to pretrans for directory/symlink conversion 

- drop /var/lib/pam_devperm (bnc#866234) 

- replace /var/run by symlink to /run
- try to handle case where /var/run is a bind-mount
- extend lua script in preinstall to handle this transition
- bnc#865893
Comments 1

Stefan Kluth's avatar

Dear filesystem,

I have a somewhat tricky problem with this package: when building a singularity container image with singularity build --fakeroot <name>.sif <name>.def an error

error: unpacking of archive failed on file /dev: cpio: chown

is thrown. Everything else installs fine.

Looking at the "directory.list" there is an entry

0755 root root /dev

which could possibly be the source of the error.

In a container, /dev is by default bind-mounted from the host and thus trying to create /dev during the install causes the error. Other bind-mounted directories exist (/tmp, /proc, /sys), with different permissions from /dev in your .list files, and these don't cause problems.

Do you think filesystem could be made to test if a /dev already exists (because it installs in a container with /dev bind-mounted from the host) and then don't install, or use different permissions, or do something else graceful?

Regards, Stefan

openSUSE Build Service is sponsored by