[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#914897: debootstrap, buster: Please disabled merged /usr by default



On Sun, 02 Dec 2018 at 21:04:55 +0100, Marc Haber wrote:
> The next debhelper change might choose to give / instead of /usr as a
> target directory by default, moving hundreds of megabytes from /usr to /
> over time.

I don't think anyone is proposing that. There's no reason why it would be
preferred over the merged /usr arrangement implemented in both usrmerge
and debhelper --merged-usr, which is the same as is implemented in some
other Linux distributions (e.g. Fedora): /usr is a real directory, and
/bin, /sbin, /lib* are symlinks to the corresponding directories in /usr.

Unifying /usr with / by making /usr a symlink to / is the opposite of
the merged /usr arrangement that is currently implemented. The Debian
hurd-i386 port did try having a /usr -> / symlink a few years ago as a
simplification, but it has all the same transitional issues as merged
/usr, with fewer advantages, which makes it unappealing.

The purpose of merged /usr is to group together all the static files
(/bin, /sbin, /lib* and the current /usr), which are more similar than
they are diferent, into one place that can be a (maybe read-only) mount
point (/usr). If you do the opposite, your root filesystem is still a
mixture of mutable files in /etc and static files in /bin, /sbin, /lib*,
so you haven't gained as much simplification as you would have had with
merged /usr.

(You talk about "default target directories", but there is nothing
so elaborate: debootstrap --merged-usr simply unpacks packages into a
chroot that already contains the symbolic links like /bin -> /usr/bin,
instead of into an empty chroot.)

    smcv


Reply to: