De acuerdo con el Estándar de jerarquía del sistema de archivos , hay varios lugares que son aceptables, dependiendo de la aplicación. Estoy citando ampliamente aquí.
bin
es la abreviatura de "binario", por supuesto
sbin
es la abreviatura de "servidor binario", de lo contrario se define como:
Utilidades utilizadas para la administración del sistema (y otros comandos solo de root)
/usr
es para datos compartibles de solo lectura, y debe poder compartirse entre varios hosts compatibles con FHS (si tiene muchas máquinas en su red y todas tienen la misma arquitectura, debería poder compartir una sola carpeta / usr con cada máquina en la red)
/usr/local
es para uso del administrador del sistema al instalar software localmente (es decir, para aplicaciones instaladas solo en esta máquina, no en todas las máquinas de la red).
Tomando estos juntos:
/usr/bin
es el directorio principal de comandos ejecutables en el sistema.
/usr/sbin
es para cualquier binario no esencial utilizado exclusivamente por el administrador del sistema.
- Los programas de administración del sistema que se requieren para la reparación del sistema, la recuperación del sistema, el montaje / usr u otras funciones esenciales deben colocarse en su
/sbin
lugar (es decir, las cosas a las que necesita acceder para montar /usr/sbin
entran /sbin
)
- Del mismo modo, los comandos de usuario esenciales que pueden ser necesarios antes de
/usr
montarlos entran/bin
- Cualquier cosa instalada solo en la máquina local debe entrar
/usr/local/bin
o/usr/local/sbin
Sin embargo, hay otro uso para / usr / local. La mayoría de las cosas que instale a través del administrador de paquetes de su distribución se colocarán en / usr; muchas personas ponen cosas que han compilado a mano en / usr / local en su lugar. Esto los mantiene fuera del camino del sistema de administración de paquetes y le permite detectar lo que instaló desde la distribución (y no necesita hacer una copia de seguridad porque puede tomarlo nuevamente) y lo que compiló a mano; También le permite ejecutar diferentes versiones al mismo tiempo (por ejemplo, / usr / bin / firefox vs / usr / local / bin / firefox).
Justo cuando pensaba que las cosas se resolvieron, hay otro lugar, que es probablemente el equivalente más cercano de c:\Program Files
- /opt
:
/opt
está reservado para la instalación de paquetes de software de aplicación complementarios.`
/opt
es probablemente el equivalente más cercano a c:\program files
, en la que es el único lugar donde uno esperaría encontrar una aplicación con todos sus archivos juntos en una carpeta, en lugar de repartidos por todo /usr/bin
, /var
y /etc
. Por lo general, solo se usa en paquetes muy grandes, pero en este caso, dado que Netbeans quiere tener su propia carpeta, probablemente tenga más sentido ponerlo en / opt / netbeans
Realmente se trata de preferencias personales. Explicaré lo mío por lo que vale.
/ usr, / usr / bin son generalmente lugares para instalar el software instalado por el sistema. Cuando instalo cosas yo mismo, las instalo en uno de varios lugares:
¿Por qué distingo entre # 2 y # 3? No tengo idea, es solo un hábito que he desarrollado con el tiempo. Resulta que / opt generalmente termina convirtiéndose en un árbol profundo de archivos, pero solo tiene 2 o 3 'cosas' instaladas. En este momento, tengo notas lampp y lotus instaladas en opt, 2 directorios que tienen árboles bastante grandes debajo de ellos. En / usr / local / bin, tengo 20 o 30 entradas, pero no subdirectorio.
No instalo cosas en / usr / bin o / usr / sbin porque me gusta mantener separadas las cosas que agrego manualmente (no es parte de la simple instalación desde el repositorio estándar).
fuente
Mientras que el Estándar de Jerarquía del Sistema de Archivos proporciona alguna orientación. Descubrí que a la mayoría de las distribuciones les gusta instalar paquetes
/usr/share
.Debido a esto, he adoptado la práctica de instalar cualquier aplicación que no esté instalada a través del administrador de paquetes (rpm / apt-get / emerge) en
/usr/local
. Esto me permite mantener las aplicaciones y bibliotecas que no se administran a través de la administración de paquetes separadas de las que sí.Es una técnica que me ha ayudado a administrar mi sistema tanto en Fedora Core como en Gentoo.
fuente
Pensé que la ubicación predeterminada es
/bin
, es donde casi todo se instala por defecto si se usa apt-get o similar ...... Sin embargo, cuando se trata de programas más modernos (o sin un instalador) que tienen muchos archivos adicionales, me gusta colocarlos en su propio directorio
/bin
.fuente
Por lo general, se instalan en varias carpetas, principalmente / usr, / local, / bin, etc. Puede averiguar dónde se instala el programa desde el instalador de GDebi (en la pestaña de archivos). Si vas a mover Netbeans, te sugiero que lo muevas a / opt, porque ahí es donde Google parece instalar sus cosas.
fuente
Estoy de acuerdo con la respuesta de James Polley, pero de hecho el directorio predeterminado tiene mucho sentido a menos que necesite compartir la aplicación entre varias cuentas. Yo, por ejemplo, necesitaba instalar Eclipse 3.0 (obsoleto) para hacer el trabajo de Flex en Linux, y lo puse en $ HOME / eclipse3.
fuente
Me gusta usar / apps para la mayoría de las aplicaciones complementarias que instalo en varios servidores. Guardo una copia de la carpeta en / installs / apps en mi servidor nfs. Cuando creo cualquier servidor Linux nuevo, monte la carpeta de instalación y copio / aplicaciones y tengo muchas aplicaciones comunes diferentes en el nuevo servidor. Elimino las entradas que no necesito para este nuevo servidor y he terminado. Bueno, tal vez necesito ejecutar un script o tres para configurar variables de entorno o instrucciones de ruta, pero eso es más o menos lo que se necesita para configurar muchos servidores nuevos.
Vengo de un fondo de Windows y .net. Una de las promesas de .net era que la mayoría de las aplicaciones podían instalarse usando Windows xcopy. Busco lo mismo en Linux. Donde esté disponible, elijo el tarball sobre el RPM o yum, etc. para poder implementar en / apps con cp -r y agregar la aplicación a mi servidor nfs para futuras implementaciones.
fuente