Pregunta

Cuando estoy en el servidor de mi departamento, no puedo utilizar órdenes como "apt-get install nethack". Tengo que construir el nethack de archivos binarios para que funcione, al menos por lo que me han dicho. No puedo entender la razón. ¿Por qué necesito para construir cosas desde binarios? ¿Por qué el uso de los comandos, tales como "apt-get", prohibido? ¿Por qué no necesite acceso de superusuario para construir a partir de binarios?

¿Fue útil?

Solución

Cuando se compila un programa desde el código fuente, se puede dar el '--prefix = ~ /'. Esto hace que se instale en relación con su propio directorio personal (programas binarios por lo general terminan en '~ / bin', en las páginas man '~ / hombre', etc). Esto no plantea ningún problema porque ya tiene permiso para escribir aquí.

apt-get por el contrario instala los paquetes en el sistema de archivos mundial ( '/ bin /', '/ usr / bin /', etc), lo que puede afectar a otros usuarios y así, con toda razón, requieren acceso administrativo.

Si desea instalar algún programa que puede utilizar el comando

apt-get source app-name

Este de trabajo, incluso si no es root, ya que sólo buscar el código fuente de la aplicación, el nombre y la puso en el directorio actual, que es más fácil que tener que rastrear la fuente y hay una mejor oportunidad de conseguir que funcione, ya que descargue la versión que debe funcionar en su sistema.

Alternativamente, usted debe insecto su administrador de sistemas para instalar los programas que necesita, ya que es su trabajo (y si los necesita, lo más probable es que el resto de su equipo también lo hace).

Otros consejos

apt-get es un comando de nivel de sistema que instala los paquetes para todos los usuarios.

Si descarga y compilar, sólo se está creando "copias" locales de los binarios, no de todo el sistema. Si se trató de completar el proceso de instalación con make install esto sería más probable es que no, ya que no tiene privilegios suficientes para instalar el programa para el acceso de todos los usuarios (la misma razón por la que no se puede ejecutar apt-get install)

Debido a apt-get instalará un sistema amplio programa.

Los lugares a los que apt-get escrituras instaladas archivos (/ bin, / usr / bin, ...) están restringidos a raíz de acceso. Imagino que cuando se construye desde el código fuente no está ejecutando el paso de instalación de la bulid. Vas a tener que configurar un prefijo para la instalación de tal manera que los paquetes terminan en algún lugar se puede escribir. Este hilo habla un poco acerca de cómo establecer los prefijos para apt-get y es probable que desea establecer su prefijo a algo así como

~/software/

y luego añadir los directorios bin resultantes a su PATH.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top