Leí esto en este sitio web y no tiene sentido.
http://rcsg-gsir.imsb-dsgi.nrc-cnrc.gc.ca/documents/basic/node32.html
Cuando UNIX se escribió por primera vez,
/bin
y/usr/bin
residía físicamente en dos discos diferentes:/bin
estar en un disco más pequeño más rápido (más costoso) y/usr/bin
en un disco más grande y más lento. Ahora,/bin
es un enlace simbólico a/usr/bin
: son esencialmente el mismo directorio.
Pero cuando ls
la /bin
carpeta, tiene mucho menos contenido que la /usr/bin
carpeta (al menos en mi sistema en ejecución).
Entonces, ¿alguien puede explicar la diferencia?
Respuestas:
¿Qué? no
/bin/
no es un enlace simbólico/usr/bin
en ningún 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
Arch Linux (el razonamiento es que no necesita/bin
para el modo de rescate / usuario único, ya que simplemente arrancaría en vivo DISCOS COMPACTOS)./bin
/usr/bin/
esencialmente,
/bin
contiene ejecutables que son requeridos por el sistema para reparaciones de emergencia, arranque y modo de usuario único./usr/bin
contiene los archivos binarios que no son necesarios.Notaré que pueden estar en discos / particiones separados,
/bin
deben estar en el mismo disco que/
./usr/bin
puede estar en otro disco, aunque tenga en cuenta que esta configuración se ha roto durante un tiempo (es por eso que systemd advierte sobre esta configuración en el arranque).Para una corrección completa, algunos dispositivos pueden ignorar FHS, ya que creo que es solo un estándar de Linux, no estoy al tanto de que todavía 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 .
fuente
/bin
es un enlace a/usr/bin
algunos dispositivos, como (¿algunas versiones de?) Solaris./usr
entre dos distribuciones muy similares, aunque no lo probaría a menos que sepa lo que está haciendo, y esté preparado para que el experimento falle de una manera que haga que la computadora no arranque o coma tu información. También tenga en cuenta que muchas de las grandes diferencias entre las 10.04 y 10.10 estará en/usr
/sbin
- Binarios necesarios para el arranque, reparación del sistema de bajo nivel o 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 a los que deben acceder usuarios registrados localmente/usr/sbin
- Binarios de aplicación / distribución que admiten o configuran cosas en / sbin./usr/share/bin
- 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. Usualmente nunca hay un/local/bin
pero siempre un/usr/local/bin
y/usr/local/share/bin
.fuente
/usr/bin
desmonta automáticamente cuando no hay usuarios conectados? Por ejemplo, cuando LINUX arranca y presenta la autenticación de inicio de sesión, ¿está/usr/bin
montado o no?Algún tipo de "actualización" sobre este tema:
Recientemente, algunas distribuciones de Linux se están fusionando
/bin
en/usr/bin
y en relación/lib
a/usr/lib
. A veces también(/usr)/sbin
a/usr/bin
(Arch Linux). Por/usr
lo tanto, se espera que esté disponible al mismo tiempo que/
.La distinción entre las dos jerarquías se toma ahora como una complejidad innecesaria. La idea era tener una vez
/bin
disponible solo en el arranque, pero tener un disco RAM inicial lo hace obsoleto.Sé que Fedora Linux (2011) y Arch Linux (2012) van de esta manera y Solaris lo hace durante mucho tiempo (> 15 años).
fuente
En Linux
/bin
y/usr/bin
todavía están separados porque es común tenerlos/usr
en una partición separada (aunque esta configuración se rompe de manera sutil, a veces). En/bin
está todos los comandos que necesitará si solo ha/
montado.En Solaris y Arch Linux (y probablemente otros)
/bin
es un enlace simbólico a/usr/bin
. Arch también tiene/sbin
y/usr/sbin
un enlace simbólico a/usr/bin
.De particular interés, la afirmación que
/bin
es para los comandos de "administrador del sistema" y/usr/bin
es para los comandos de usuario no es cierta (a menos que piense esobash
yls
sea solo para administradores, en cuyo caso tiene mucho que aprender). Los comandos de administrador están en/sbin
y/usr/sbin
.fuente
bin
es solo para administradores de sistemas? para esosbin
está.Hay muchos sistemas basados en UNIX. Linux, AIX, Solaris, BSD, etc. La cita original ofrece un contexto histórico que se aplica a todos los sabores. Si observa cualquier sistema específico, verá resultados diferentes. La última oración de la cita original es específica solo para algunas versiones y distribuciones.
fuente