Cleaning up the filesystem
"Testing" Reality
As an explanation, the TC discussed the advantages and disadvantages, as well as the future planning for Debian 11 Bullseye. People who install Debian 10 Buster or derivatives thereof can look forward to a system with a unified /usr
directory and symbolic links of /bin
, /sbin
, /lib
to the /usr/bin
, /usr/sbin
, and /usr/lib
directories (Figure 2).
The setup does not affect existing systems unless this is desired by the user. In this case, you just need to install the usrmerge package, which moves the corresponding directories and makes further adjustments. During the install, Debian explicitly asks for confirmation, since the change cannot be reversed.
After the change, check to see whether the /etc/dpkg/dpkg.cfg.d/usrmerge
directory exists and if it contains package names. If it does, this means that there are still conflicts with these remaining packages. If it is empty or does not exist, you can remove usrmerge; otherwise wait until the list is empty (Figure 3).
Unlike Debian, other distributions switched to a unified /usr
directory on deadline. Debian's transition issues largely resulted from the decision by developers to leave older systems untouched and give users a choice. For an in-depth analysis of why Debian has had more problems with this migration than other distributions, see LWN.net [13].
Conclusions and Outlook
Switching to a merged /usr
directory eliminates the historical duplication of directories and paves the way for modern techniques, such as stateless systems and atomic updates, thus facilitating the handling of snapshots. However, most desktop users are unlikely to notice any changes. The symbolic links to the subdirectories in /usr
, on the other hand, will probably remain with us for some years. For Debian 11, the aim is for Debian packages that can be built on systems with and without the /usr
merge and that still will work on the other system without restrictions.
Infos
- FHS: https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
- The /usr merge: https://wiki.debian.org/UsrMerge
- Fedora 17: https://www.freedesktop.org/wiki/Software/systemd/TheCaseForTheUsrMerge/
- Stateless systems: https://en.wikipedia.org/wiki/Stateless_protocol
- initrd: https://en.wikipedia.org/wiki/Initial_ramdisk
- PDP-11: https://en.wikipedia.org/wiki/PDP-11
- RK05: https://en.wikipedia.org/wiki/RK05
- Rob Landley: http://landley.net/writing/hackermonthly-issue022-pg33.pdf
- usrmerge package: https://salsa.debian.org/md/usrmerge/raw/master/debian/README.Debian
- Bugs: https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=usrmerge;users=md@linux.it
- Ian Jackson's bug report: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=%23914897
- TC decision: https://lists.debian.org/debian-devel-announce/2019/03/msg00001.html
- Debian migration issues: https://lwn.net/Articles/773342/
« Previous 1 2
Buy this article as PDF
(incl. VAT)