Bienvenido a Server Fault. En general, este tipo de pregunta no es sobre el tema aquí. Se espera que la mayoría de los administradores de sistemas ya hayan enfrentado este problema antes de convertirse en administradores de sistemas a través de modificaciones en sus propias estaciones de trabajo. Sin embargo, los administradores de sistemas que provienen de un fondo de Windows pueden no haber enfrentado esto, así que aquí hay algunas cosas a tener en cuenta:
¿Por qué no utilizar un administrador de paquetes para instalar software en su servidor?
Los administradores de paquetes como yum
o apt
manejan estas dependencias por usted. Además, también se pueden usar para administrar actualizaciones del software en su servidor. La mayoría de las versiones de * nix tendrán un administrador de paquetes instalado de forma predeterminada, especialmente en los VPS que vienen con el sistema operativo preinstalado. Si realmente es nuevo en esto, use uno de estos en su sistema de producción y guarde aventuras en la compilación o instalación de RPM de vanguardia para su entorno de prueba.
¡Pero debo usar un paquete más actualizado que el que está disponible en mi administrador de paquetes!
La mayoría de los administradores de paquetes se pueden configurar para usar diferentes repositorios; es posible que haya uno que proporcione la versión del paquete que necesita y aún así le permita aprovechar las funciones de su administrador de paquetes.
El paquete que necesito no está disponible a través de repositorios o administradores de paquetes
En ese caso, es probable que haga necesario averiguar las dependencias (o extraerla, y utilizar una más estable / versión común del software). Probablemente debería hacer lo siguiente en un entorno de prueba y tomar notas cuidadosas de lo que hace:
- Asegúrese de leer la documentación del software que está instalando; esto probablemente enumerará lo que necesita instalar primero, pero no lo que se requiere para ese software.
- Use su administrador de paquetes para instalar las cosas que se requieren, en la mayoría de los casos estarán disponibles.
- Una vez que haya completado esto, intente instalar.
- Si aún ve mensajes sobre dependencias faltantes, tome nota de todas ellas y vuelva a intentar instalar la mayor cantidad posible utilizando su administrador de paquetes.
- Si no se encuentra una dependencia, debe considerarla una subtarea y tratarla de forma recursiva (encontrar el tarball de origen, buscar dependencias, instalar).
- Es un proceso iterativo.
Sigo teniendo problemas!
Si ha seguido todos los pasos anteriores y todavía tiene problemas, es posible que se haya encontrado con algún problema extraño con el que otros Faulters del servidor pueden ayudarlo. Cree una nueva pregunta, dando detalles de qué software está tratando de instalar, qué versión y los mensajes de error exactos que está viendo.
Asesoramiento específico para los principales sistemas de gestión de paquetes.
Gestión de paquetes RPM (RHEL / Fedora y clones) y DEB (Debian / Ubuntu y clones)
- yum whatprovides filename es una forma excelente de encontrar el paquete que proporciona un archivo o biblioteca específicos en un sistema de tipo RHEL.
- ¡No lo use a
./configure && make && make install
ciegas si es posible! La administración de paquetes se inventó por esta misma razón para evitar el desorden incómodo e imposible de mantener que resulta de la instalación imposible de rastrear muchos archivos en conflicto.
- Muchas bibliotecas se dividen en dos partes: binarias (objetos compartidos, por ejemplo) y desarrollo (encabezados). Por lo tanto, necesitaría ambos
libfoo
y libfoo-devel
(o -dev
) paquetes.
- Considere usar
fpm
( https://github.com/jordansissel/fpm ) para convertir tarballs en RPM y DEB limpios
- Si está lanzando sus propios paquetes, USTED es la persona responsable de sus actualizaciones, pruebas y mantenimiento. Si no tienes infraestructura para eso, definitivamente estás apuntando demasiado alto.
Encontrar dependencias por nombre de archivo para RPM
http://rpmfind.net es un buen lugar para buscar nombres de paquetes si conoce el nombre del archivo del que se queja el procedimiento de instalación. Sin embargo, no se recomienda combinar y mezclar paquetes de diferentes distribuciones.