Soy nuevo en Linux y estoy ejecutando CentOS. He encontrado cuatro formas de actualizar o instalar software.
Hasta ahora, he visto:
yum install [program]apt-get install [program]rpm -i [program].rpmwget [program].tar.gz->unpack->./configure->make->make install
Ese último es un verdadero dolor, especialmente proveniente de Windows, donde la instalación de un programa suele ser un clic y un buen asistente de instalación.
Entonces, mis preguntas son:
- ¿Por qué hay tantas formas diferentes de hacer esto en Linux?
- ¿Cuál recomienda usar y por qué?
- ¿Hay alguna otra forma de instalar programas en Linux?
linux
installation
package-management
yum
rpm
Saif Bechan
fuente
fuente

yumvsup2date. Nunca he sido claro en la diferencia.apt-getes para Debian, y realmente no debería aparecer en CentOS ...Respuestas:
Todas estas herramientas instalan software en su sistema, pero están trabajando en diferentes niveles.
./configure && make install
Ejecutar
./configure && make installcompila e instala las bibliotecas o ejecutables directamente desde el código fuente.El
make installpaso básicamente solo copia los archivos finales en su sistema. Muchas fuentes vienen con unamake uninstallregla especial para eliminarlas nuevamente, pero esto no está garantizado y, por supuesto, solo funciona mientras tenga las fuentes configuradas. Además, esto no se ocupa de las dependencias requeridas.A menudo solo existe el código fuente disponible para un determinado paquete, por lo que este es el único camino a seguir. Además,
./configuregeneralmente acepta muchas opciones que le permiten personalizar su paquete.No poder averiguar qué software instaló qué archivo, y la falta de una forma confiable de eliminarlos del sistema son las principales deficiencias de este enfoque.
RPM (Redhat Package Manager)
rpminstala software ya configurado y compilado en su sistema y también viene con una desinstalación para deshacerse de él nuevamente. Los paquetes deben ser creados por alguien. Esta persona ya decidió qué características incluir y cómo integrar mejor el paquete en el diseño de su sistema. También viene con una lista de dependencias.Dado que los rpms se usan para muchas distribuciones allí, a menudo querrá asegurarse de que este rpm se haya escrito para su distribución, de modo que las rutas de instalación, las dependencias y otras cosas de limpieza se integren bien.
En los sistemas Debian, el formato de paquete equivalente es
.deby la instalación y la base de datos son manejadas por ladpkgherramienta.Ñam
yumes una envoltura adicional alrededorrpm. Mantiene su propia base de datos de archivos rpm disponibles para su distribución, generalmente en repositorios en línea. Para las versiones estables de la mayoría de las distribuciones, todos los paquetes dentro de esa base de datos jugarán bien entre sí. Se puede buscar en esta base de datos (por ejemplo, conyum search some_name).También resolverá automáticamente las dependencias por usted. Los paquetes (y con un poco de ayuda adicional sus dependencias) también se pueden desinstalar fácilmente.
En los sistemas Debian, el repositorio equivalente y las herramientas de resolución de dependencia son proporcionadas por Apt (
apt-getyaptitude).Para resumir: si solo quieres un software, prueba
yumprimero. Si no está disponible allí, puede intentar encontrar unrpmpaquete existente . Si no hay ninguno o tiene algunos requisitos especiales, compile desde la fuente.fuente
apt-geto todavía se recomienda para algo?apt-getno registró dependencias automáticas y las dejó atrás después de una desinstalación, mientras queaptitudeluego introdujo el seguimiento de dependencias adecuado. Además, también proporcionó algunas características adicionales que no están disponibles enapt-get. No estoy seguro, pero creo que en algún momentoapt-getyaptitudedonde se actualizó para usar el mismo backend avanzado que proporciona gran parte de esa funcionalidad.Yum son RPM son lo mismo, excepto que yum obtiene los paquetes de la red automáticamente y los instala (usando
rpm -i) en un solo paso. Debe usarse siempre que sea posible para facilitar la actualización. Úselorpmsolo cuando no haya un paquete que pueda encontraryumy use elmakemétodo solo cuando no haya un paquete .rpm disponible o necesite cambiar algunas opciones de tiempo de compilación.fuente