Bug 976196

Summary: Major FHS violences: /usr /usr/lib /bin /sbin /usr/bin /usr/sbin
Product: [openSUSE] openSUSE Distribution Reporter: Forgotten User gRveQ1K55E <forgotten_gRveQ1K55E>
Component: BasesystemAssignee: E-mail List <bnc-team-screening>
Status: RESOLVED INVALID QA Contact: E-mail List <qa-bugs>
Severity: Critical    
Priority: P5 - None CC: astieger, coolo
Version: Leap 42.1   
Target Milestone: ---   
Hardware: Other   
OS: Linux   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Forgotten User gRveQ1K55E 2016-04-19 12:58:19 UTC
As allowed by the FHS I wanted to share /usr. See also:

http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html#THEUSRHIERARCHY1
http://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.html#theUsrHierarchy

This means, a system has to be bootable (and manageable) WITHOUT /usr!

So I moved /usr away (to /tusr) because I also wanted to do some work on the filesystem. As of this moment I couldn't use my filesystem tools. They where stored in /usr/bin or /usr/sbin and there where only links from /bin and /sbin to the corresponding /usr-directory.

So I tried to move /usr back to where it belong, but mv was also only a link to /usr/bin

So I tried to use the full path to mv in the temporary /usr-directorie (/tusr/bin/mv) but as it was dynamically linked, mv couldn't find it's library.


So, this is a absolute major Bug!

It is not possible to work on the system without anything mounted that is allowed to be mountable.
There are no basic tools:

http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html#SBINSYSTEMBINARIES
"/sbin contains binaries essential for booting, restoring, recovering, and/or repairing the system in addition to the binaries in /bin."

Same for /bin and /lib as well as for FHS 3.0 and by the way, as well as for the FHS 20 years ago (even if it was another name...)

This is critical because it is bug by design. This way there is no system maintenance possible without /usr. In fact, without /usr the system is absolutley useless.

Please read the FHS about /bin, /sbin and /lib.
Comment 1 Andreas Stieger 2016-04-19 13:09:32 UTC
Anniyka:
https://en.opensuse.org/openSUSE:Usr_merge
http://lists.opensuse.org/opensuse-factory/2011-11/msg01398.html
https://www.freedesktop.org/wiki/Software/systemd/TheCaseForTheUsrMerge/

Robert, I see you worked on much of this. Could you handle as appropriate?
Comment 2 Forgotten User gRveQ1K55E 2016-04-19 13:14:33 UTC
BTW: Also no reboot and no shutdown ....
Comment 3 Stephan Kulow 2016-04-19 13:18:17 UTC
you can use /usr from anywhere just fine - the initrd will mount it for you before it starts the system. If there is a real problem with it, please attach the logs. What you did is invalid as you need to setup the system like this and not change it afterwards. The FHS does *not* state that you can get rid of /usr in a running system - only that you can share it.
Comment 4 Forgotten User gRveQ1K55E 2016-04-19 13:30:52 UTC
Well, the links are nice, but the FHS 3 is from 2015 and there is no usrmove in it, FHS 2.3 was from 2011 and also no usermove.

If you want to mount /usr from another server as it is mentioned in FHS, than you get stuck. 

In other words: If you think you act in standard ways and that you can rely on this same standards, than you f***** up.

Stephan:
The FHS grant that I can use/repair the system without /usr! So I can move it away (and it is not the point if it is in a running system or not) and if something goes wrong i can move it back. In this case I can't even reboot the system in a clean way!

So if you want to move essential binaries around, why don't you try to talk with the Linux Foundation to change the standard FIRST?
Comment 5 Forgotten User gRveQ1K55E 2016-04-19 13:32:44 UTC
As long as the FHS says otherwise, this is a bug, not a feature!
Comment 6 Stephan Kulow 2016-04-19 14:10:33 UTC
if you wanted to validate openSUSE Leap against FHS 3.0, I agree - it's a critical bug. But as you found out yourself, openSUSE Leap is not following this standard as written (just as Arch Linux, Fedora, ...) because it just doesn't make sense any longer.
Comment 7 Forgotten User gRveQ1K55E 2016-04-19 14:42:04 UTC
This stands to reason, but this is not the place.
We can talk over a beer about it.

Well, it's already closed ..