Tengo seis directorios con archivos de comando. Estos son /bin, /sbin, /usr/bin, /usr/sbin, /usr/local/biny /usr/local/sbin.
¿Cuáles son las diferencias entre estos? Si estoy escribiendo mis propios guiones, ¿dónde debo agregarlos?
Relacionado:

Respuestas:
Consulte el estándar de jerarquía del sistema de archivos (FHS) para Linux para esto.
/bin: Para binarios que se pueden usar antes de/usrmontar la partición. Esto se utiliza para archivos binarios triviales utilizados en la etapa de inicio muy temprana o los que necesita tener disponibles en el modo de inicio de usuario único. Piense en los binarios comocat,ls, etc./sbin: Igual, pero para binarios con privilegios de superusuario (root) requeridos ./usr/bin: Igual que el primero, pero para binarios generales de todo el sistema ./usr/sbin: Igual que el anterior, pero para binarios con privilegios de superusuario (root) requeridos.Ninguna de las anteriores. Debe usar
/usr/local/bino/usr/local/sbinpara scripts disponibles en todo el sistema. Lalocalruta significa que no está gestionada por los paquetes del sistema (esto es un error para los paquetes Debian / Ubuntu).Para secuencias de comandos con ámbito de usuario , use
~/bin(una carpeta bin personal en su directorio de inicio).La FHS dice para
/usr/local:fuente
/bincausa algún problema? He movido mis guiones de acuerdo con su respuesta, pero todavía tengo curiosidadSeverity:Serious Certainty:Certainls -lano muestra nadaTuve una pregunta similar hace más de un año: ¿El mejor directorio para colocar mis scripts de bash?
Directorios del sistema para binarios
man hier(jerarquía) enumera todos los directorios. Para obtener solo los binarios, use:¿Dónde poner tus propios guiones?
Para que todos los usuarios accedan a sus scripts, puede incluirlos
/usr/local/bin. Tenga en cuenta que necesitasudoacceso para agregar / cambiar archivos aquí. Ver: ¿Existe un lugar estándar para colocar scripts de Linux personalizados?Para sus propios scripts de ID de usuario, póngalos
/home/YOUR_NAME/bin. Tenga en cuenta que primero debe crear este directorio y reiniciar el terminal para que la ruta se configure automáticamente~/.profile. Ver: ¿Cómo agregar / home / username / bin a $ PATH?Lo que sé no lo sé
Estoy pensando en tomar algunos de mis scripts de bash más complejos en Ask Ubuntu y configurarlos con scripts de instalación
github. Aquí hay algunos ejemplos:Creo que los scripts deberían instalarse en
/usr/binel $ PATH, pero todavía no estoy seguro del lugar apropiado.fuente
man hiersección que no respondió la respuesta de gertvdijk. es decir, puede obtener la estructura jerárquica del directorio en la línea de comandos sin tener que recurrir a leerla en la web (es decir, aquí).man hieres un extracto informativamente insuficiente de la OMI). Sin embargo, esta puede ser mi opinión personal./usr/X11R6/biny/usr/local/binque se incluye enman heir./usr/local/binya que no eres el administrador de paquetes?