Sistema de archivos Linux

13

¿Cuáles son las convenciones para las ubicaciones de archivos en Linux? Hasta ahora he logrado deducir:

/ proc (referencias a procesos en ejecución)

/ dev (referencias a todo el hardware)

/ etc (archivos de configuración)

/ hogar (hogar)

/ mnt (dispositivos montados)

/ media (dispositivos extraíbles como CD, discos USB)

... pero otras partes aún no están claras, por ejemplo:

¿Dónde pongo la fuente descargada?

/ usr / src

/ usr / local / src

¿Dónde pongo los programas compilados?

/compartimiento

/ usr / bin

/ usr / local / bin

¿Cuál es la diferencia entre / bin y / sbin ?

¿Cómo difieren las distribuciones?

Me doy cuenta de que no se trata de una sola pregunta, pero me parece que deberían responderse todas juntas. Esperemos que otros también estén confundidos.

pez globo
fuente

Respuestas:

14

Es posible que desee leer el Estándar de jerarquía del sistema de archivos ; Es una referencia útil.

Su directorio de inicio es donde debe ir la mayor parte de eso. Finge que no eres el administrador del sistema; finge que eres otra persona con una cuenta en el sistema. Dentro de su directorio de inicio, por ejemplo /home/pufferfish, puede hacer lo que quiera. /home/pufferfish/bin, /home/pufferfish/liby /home/pufferfish/srcson todas opciones convencionales, pero ninguna de ellas realmente importa .

Para los programas compilados, cualquiera que sea el directorio / directorios que utilice, asegúrese de que estén en la RUTA para que pueda ejecutarlos sin escribir el script o la ruta completa del ejecutable.

Las distribuciones realmente no difieren mucho. Descubrí que el administrador de paquetes en uno puede instalar binarios /usr/bin, mientras que algunas bibliotecas pueden ir a otro lado, y otro sistema puede instalar cosas en otro lugar. Generalmente tengo que investigar un poco para encontrar a dónde van las cosas cada vez.

Nikhil Chelliah
fuente
6

Simplemente sucede que hay un estándar en el mundo de SO similar a Unix llamado Estándar de Jerarquía del Sistema de Archivos que explica las mejores prácticas que siguen la mayoría de los proveedores de Unix. Es una buena lectura y vale la pena revisarlo si pasas mucho tiempo en entornos * nix.

Estándar de jerarquía del sistema de archivos

Respuestas a sus preguntas:

Tanto / usr / src como / usr / local / src funcionan. Tu elección. Solo mantener es consistente.

/ bin es para los comandos necesarios para los usuarios. NO colocaría binarios personalizados allí.

/ sbin es para archivos binarios del sistema (generalmente cosas de administrador de sistemas). Contiene cosas para arrancar y fs utils.

/ usr / bin es donde viven la mayoría de los comandos de usuario y generalmente encontrará que la mayoría de los sistemas de administración de paquetes de Linux colocan binarios o al menos enlaces simbólicos a binarios aquí.

/ usr / local / bin es un lugar seguro para colocar su propio código compilado que es exclusivo de esa máquina.

Mark Turner
fuente
6

Tal vez deberías echar un vistazo a estos:

texto alternativo

texto alternativo

n00ki3
fuente
3

/ usr / local / es para el software que se compiló en este sistema. Es similar a / usr /, solo que no se instaló desde los paquetes.

/ sbin / vs / bin / (y / usr / sbin / vs / usr / bin): s significa superusuario. Programas que a los usuarios normales no deberían importarles y que a menudo no deberían tener permiso para ejecutar

Tadeusz A. Kadłubowski
fuente