home | list info | list archive | date index | thread index

Re: [OCLUG-Tech] is there a FHS/LSB rationale for installing in /usr/bin vs /usr/sbin?

On Wed, 14 Mar 2018, Robert P. J. Day wrote:

 more nitpicky pedantry, but i was summarizing some handy system H/W
utilities and noticed that, while lsusb and lspci philosophically do
the same thing (that is, display system info), on my fedora system,
they are installed differently:

 $ type lsusb
 lsusb is /usr/bin/lsusb
 $ type lspci
 lspci is /usr/sbin/lspci


/sbin/* executables were historically statically linked, accessible earlier in the system starup process before shared libs were possibly mounted or available.

Hmm. Running "file" on my /sbin/*, /usr/sbin/* on 16.04 only shows dynamically linked utilities. Years ago, I remember seeing statically linked files in these dirs.

Presumably, at least modern releases are complex enough that booting to a normal runtime config now requires so much (blame systemd? ;-) or maybe just md, raid, lvm, crypto fs) that it's not practical or useful to build static execs that could be used to boot to a lesser (recovery) system state? Dunno.

I can see lspci being of more 'utility' in debugging a system in recovery mode than lsusb, which might explain the different (historical?) placements.

Today it could just be that /sbin exec should be available on the first part of system initialization? But no longer real concern given boot disk sizes of GBs?

Anyway, not an official FHS/LSC reason, just my observation.

WHat does file ../sbin/* show on other systems?

Brett