[arch-general] /usr is not mounted. This is not supported.

Tom Gundersen teg at jklm.no
Tue Oct 25 11:51:47 EDT 2011


On Tue, Oct 25, 2011 at 2:12 PM, clemens fischer
<ino-news at spotteswoode.dnsalias.org> wrote:
> What patch would that be?  THE-FAVOURITE-SEARCH-ENGINE didn't pull
> anything useful for "patch Thomas-Bächler busybox".  Can somebody point
> us to the relevant code, please?

Thomas is right, that is not strictly speaking needed (but see below).

> A hook to mount the users /usr would presumably go right before
>
>  "if [ -x /lib/udev/udevd ]; then"
>
> in "/lib/initcpio/init"?

This is what I had in mind:
<https://github.com/teg/mkinitcpio/commit/76dacf8b9de9cc0409741840b1d8e449862fc846>.

To make it work nicely, we should also add the dual logic to shutdown:
<https://github.com/teg/mkinitcpio/commit/42610beb5a317d63dc76dabb72a9061a799b280b>,
which will pivot back to the initramfs and unmount /usr cleanly. This
is where we need some busybox work, and I guess this patch should be
discussed a bit more, maybe it is not the best way to do it.

> Are the symlinks in "/dev/disk/by-label/" by then?  I guess not, since
> udevd rules are responsible for setting them up, right?
>
> So how do the boot-loaders do this?  My first thought was to have
> a kernel command line parameter "mnt_usr_from=/dev/disk/by-label/my-usr"
> or whatever and then use busybox' ``mount "$mnt_usr_from" /usr''.
>
> I do find it annoying to have /usr with all the bulky GUI crap,
> audio-tools and whatnot in "/".  FreeBSD has a clean separation between
> what's needed to bring up, build and run a basic system ( -> /usr ) and
> user-toys, including all the GUI and multimedia stuff ( -> /usr/local ).
>
> I always regret linux cramming everything into /usr.  Some vital
> programs needed at startup are in /[s]bin, some in /lib, but look at the
> rules in /lib/udev/rules.d/: while vboxdrv and alsa-restore could
> equally well run when /usr is finally up, the device-mapper rules check
> for dmsetup residing in usr/sbin, although they are needed early!

It is currently a mess. I agree with the people advocating putting
everything in /usr (and symlink /bin, /sbin and /lib for
compatibility). That obviously requires being able to mount /usr from
initramfs.

-t


More information about the arch-general mailing list