Tanto en Red Hat Enterprise Linux como en SuSE (y distros derivadas como CentOS, Fedora, u OpenSUSE), RPM (Red Hat Package Manager) es el gestor de paquetes utilizado por defecto. Fue desarrollado por Red Hat y luego adoptado por otras distribuciones. Podemos decir que consta de 2 componentes fundamentales: 1) el comando rpm
, y 2) una base de datos local. Esta última contiene la lista de paquetes instalados e información sobre los mismos. En este post aprenderemos más sobre la utilidad y el uso de RPM.
Uso de RPM
Para empezar, tomemos como ejemplo a bc-1.06.95-13.el7.x86_64.rpm. Podemos descargar el mismo desde el listado de paquetes disponibles para CentOS 7. En el nombre del archivo podemos encontrar a primera vista los siguientes datos:
- El nombre del paquete: bc
- La versión: 1.06-95-13.el7
- La arquitectura: x86_64
Por lo general, la instalación se realiza con las opciones combinadas -Uvh
o -Fvh
en vez del simple -i
(también válido). De las dos alternativas anteriores, la primera instala o actualiza (según sea el caso), mientras que la segunda solamente instalará el paquete y no realizará ninguna acción si ya existe una versión previa del mismo. Para nuestra conveniencia, -v
muestra el nombre del paquete durante la instalación y -h
imprime una serie de #’s para indicar el progreso de la instalación. Ambas son útiles en particular si estamos instalando varios paquetes a la vez.
La base de datos de paquetes está ubicada dentro del directorio /var/lib/rpm. Ahí podremos encontrar información sobre el software presente en el sistema, las versiones de cada uno, dependencias, etc.
Otras opciones útiles del comando rpm
que no pueden faltar en nuestro arsenal son (siempre seguidas de -q
, de query):
-a
: muestra la lista de todos los paquetes instalados.-l
: lista de los archivos instalados por un paquete dado.-f
: devuelve el nombre del paquete que contiene el archivo que se especifica a continuación.--requires
: muestra la lista de dependencias del paquete.
En la Fig. 1 vemos ilustrados los puntos anteriores utilizando a htop como ejemplo:
Espero que este post les haya resultado útil. ¡Nos leemos en el próximo!
Te invitamos a conocer la propuesta completa de Carrera Linux Argentina para convertirte en un experto y completo sysadmin desde cero. En nuestro sitio web Aprender Linux podrás encontrar más detalles y contactarnos si te surgen preguntas o dudas. ¡Esperamos tu consulta!