¿Qué? sin /bin/
no es un enlace simbólico a /usr/bin
en cualquier sistema compatible con FHS. Tenga en cuenta que todavía hay Unices y Linux populares que ignoran esto, por ejemplo, /bin
y /sbin
están vinculados a /usr/bin
en Arch Linux (el razonamiento es que no necesita /bin
para rescate/modo de usuario único, ya que simplemente iniciaría un CD en vivo).
/bin
contiene comandos que pueden usar tanto el administrador del sistema como los usuarios, pero que son necesarios cuando no hay otros sistemas de archivos montados (por ejemplo, en modo de usuario único). También puede contener comandos que son utilizados indirectamente por scripts
/usr/bin/
Este es el directorio principal de comandos ejecutables en el sistema.
esencialmente, /bin
contiene ejecutables que el sistema requiere para reparaciones de emergencia, arranque y modo de usuario único. /usr/bin
contiene archivos binarios que no son necesarios.
Notaré que pueden estar en discos/particiones separados, /bin
debe estar en el mismo disco que /
. /usr/bin
puede estar en otro disco, aunque tenga en cuenta que esta configuración se ha roto por un tiempo (por eso, por ejemplo, systemd advierte sobre esta configuración en el arranque).
Para mayor corrección, algunos unices pueden ignorar FHS, ya que creo que es solo un estándar de Linux, no tengo conocimiento de que aún se haya incluido en SUS, Posix o cualquier otro estándar de UNIX, aunque debería ser en mi humilde opinión. Sin embargo, es parte del estándar LSB.
Actualización:para un poco de historia y la verdadera razón por la que hay /usr
, lea esto:http://lists.busybox.net/pipermail/busybox/2010-December/074114.html. También esto.
/sbin
- Binarios necesarios para el arranque, la reparación del sistema de bajo nivel o el mantenimiento (nivel de ejecución 1 o S)
/bin
- Binarios necesarios para el funcionamiento normal/estándar del sistema en cualquier nivel de ejecución.
/usr/bin
- Binarios de aplicación/distribución destinados a ser accedidos por usuarios registrados localmente
/usr/sbin
- Binarios de aplicación/distribución que admiten o configuran cosas en /sbin.
/usr/share/bin
- Archivos binarios o scripts de aplicación/distribución destinados a ser accedidos a través de la web, es decir, aplicaciones web Apache
*local*
- Binarios que no forman parte de una distribución; compilado localmente o instalado manualmente. Por lo general, nunca hay un /local/bin
pero siempre un /usr/local/bin
y /usr/local/share/bin
.
Algún tipo de "actualización" sobre este tema:
Recientemente, algunas distribuciones de Linux están fusionando /bin
en /usr/bin
y relacionado /lib
en /usr/lib
. A veces también (/usr)/sbin
a /usr/bin
(Arch Linux). Así que /usr
se espera que esté disponible al mismo tiempo que /
.
La distinción entre las dos jerarquías se considera una complejidad innecesaria ahora. La idea alguna vez fue tener solo /bin
disponible en el arranque, pero tener un ramdisk inicial lo vuelve obsoleto.
Sé que Fedora Linux (2011) y Arch Linux (2012) van por este camino y Solaris lo ha hecho durante mucho tiempo (> 15 años).
- escritorio gratuito:TheCaseForTheUsrMerge
- fedora:función UsrMove
- arch:combine /bin, /sbin, /lib en /usr/bin y /usr/lib