ArchThis Forum is for the discussion of Arch Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
So I was wondering if anyone can direct me to documentation on why this sort of change has been implemented?
Specifically I would like to know what issues there are surrounding once /sbin files now being in /usr/bin which is in everyone's PATH?
The starting point would be this https://wiki.archlinux.org/index.php...stem_hierarchy
It has a few links about possible problems. The discussion on why it was done is probably buried somewhere in the developers' mailing list.
This has been a hot topic ,some like it some do not .
the remerging of the " /" and "/usr" split
i have no opinion on this
both are good
but a "crystalball " guess ...
with the move to more and more "cloud" services
having /usr might stay around as the local hdd and / as the cloud , or not .
-- like it was with a server and a thin client with /usr/local and /usr .
Well I am starting to see some light in the forest Thanks again David for the link.
I guess my concerns would be around now requiring intramfs bringing up the network as well so a nfs mounted /usr can be used prior to init??
I do agree that the endless symlinking that has previously occurred to allow for /bin, /sbin, /lib, /usr/bin, /usr/sbin and /usr/lib to all work has been painful.
What I am struggling with is the lack of separation between bin and sbin from a security point of view in that all users will now have /usr/bin in their path and so can now execute
anything not restricted by chmod.
My other issue, which is a little old fashioned, is the call to 'which' to tell me that a command is in and sbin directory and hence a root-esque command, now all simply return /usr/bin/...
this has significant implications for systems with with separate / and /usr partitions. Traditionally, early in the boot process the init system should not assume that /usr is mounted and scripts/tools would restrict themselves to things installed in /bin, /sbin and /lib and forgo things that would be in /usr/bin, /usr/sbin and /usr/lib.
Evo2.
PS. Sorry not an Arch user, but have always set up my servers with separate / and /usr, so have been watching this / to /usr migration with some interest.
So are you saying that if /usr is on a separate partition then there would be no option to have it mounted in initramfs to have the major commands available?
If I read correctly this seems to be the solution or at least the objective. I also saw that they have inferred several issue can be overcome by having /usr available early:
Quote:
Most of the failures you will experience with /usr split off and not pre-mounted in the initramfs are graceful failures: they won't become directly visible, however certain features become unavailable due to these failures. Quite a number of programs these days hook themselves into the early boot process at various stages. A popular way to do this is for example via udev rules. The binaries called from these rules are sometimes located on /usr/bin, or link against libraries in /usr/lib, or use data files from /usr/share. If these rules fail udev will proceed with the next one, however later on applications will then not properly detect these udev devices or features of these devices. Here's a short, very in-comprehensive list of software we are aware of that currently are not able to provide the full set of functionality when /usr is split off and not pre-mounted at boot: udev-pci-db/udev-usb-db and all rules depending on this (using the PCI/USB database in /usr/share), PulseAudio, NetworkManager, ModemManager, udisks, libatasmart, usb_modeswitch, gnome-color-manager, usbmuxd, ALSA, D-Bus, CUPS, Plymouth, LVM, hplip, multipath, Argyll, VMWare, the locale logic of most programs and a lot of other stuff.
You don't believe us? Well, here's a command line that reveals a few obvious cases of udev rules that will silently fail to work if /usr is split off and not pre-mounted: egrep 'usb-db|pci-db|FROM_DATABASE|/usr' /*/udev/rules.d/* -- and you find a lot more if you actually look for it. On my fresh Fedora 15 install that's 23 obvious cases.
I would be interested on your feedback on the above
Not sure if any Fedora or Arch people have been looking at this, but if so, I would like to know if there is any documentation or detailed instructions on how to perform this type of move?
I ask as I also have a side development distro and was curious if I did an alternate fork to see what benefits this may have from a packaging point of view.
So are you saying that if /usr is on a separate partition then there would be no option to have it mounted in initramfs to have the major commands available?
I'm thinking of cases where /usr can't be mounted for some reason. So perhaps something fancy can be done with initramfs for example have a busybox shell so the the system isn't completely fubared, but surely implementing this would be a serious PITA result in reduced functionality. So the whole thing looks like a lot of work without significant gain. If people really do want to spend their time implementing this then good for them - I'll sit back and watch.
Well so far I see Arch (and any forks) plus Fedora (and I assume its forks too) have gone this way. On some the investigation I have done it does seem that initramfs is doing exactly what you have said
and providing a minimal environment should things go wrong (which funnily enough has just happened to a family member's computer after an upgrade which I am stuck now trying to solve ... so I guess i will
see what level of access it has).
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.