Cómo listar y filtrar paquetes en Centos
Aprendemos a mostrar cómo listar y filtrar paquetes en Centos. Esto puede ser muy útil si queremos instalar los mismos paquetes, con sus respectivas versiones, en otro host; o si deseamos reinstalar nuestro sistema.
También nos puede servir para verificar si un paquete instalado, contar el número de paquetes instalados o averiguar la versión de un paquete dado.
Estos tips, también se pueden utilizar en sistemas RHEL o Scientific Linux
Listar paquetes instalados con Yum
YUM, acrónicmo en inglés de “Yellowdog Updates Modified”, es el administrador de paquetes de RHEL, Centos y Scientific Linux. Lo podemos utilizar para descargar, instalar, eliminar, consultar y administrar paquetes de software RPM. Todo esto desde los repositorios oficiales o de terceros.
Para listar los paquetes instalados en un sistema podemos utilizar el siguiente comando y parámetros:
1 | sudo yum list installed |
Se imprimirá en pantalla una lista de todos los paquetes instalados, incluida la información sobre las versiones y el repositorio de los paquetes.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | [root@servcentos]# yum list installed | less Complementos cargados:fastestmirror Paquetes instalados GeoIP.x86_64 1.5.0-13.el7 @anaconda NetworkManager.x86_64 1:1.12.0-8.el7_6 @updates NetworkManager-libnm.x86_64 1:1.12.0-8.el7_6 @updates NetworkManager-team.x86_64 1:1.12.0-8.el7_6 @updates NetworkManager-tui.x86_64 1:1.12.0-8.el7_6 @updates acl.x86_64 2.2.51-14.el7 @anaconda aic94xx-firmware.noarch 30-6.el7 @anaconda alsa-firmware.noarch 1.0.28-2.el7 @anaconda alsa-lib.x86_64 1.1.6-2.el7 @anaconda alsa-tools-firmware.x86_64 1.1.0-1.el7 @anaconda apr.x86_64 1.4.8-3.el7_4.1 @base apr-util.x86_64 1.5.2-6.el7 @base audit.x86_64 2.8.4-4.el7 @anaconda audit-libs.x86_64 2.8.4-4.el7 @anaconda authconfig.x86_64 6.2.8-30.el7 @anaconda basesystem.noarch 10.0-7.el7.centos @anaconda bash.x86_64 4.2.46-31.el7 @anaconda bind-libs-lite.x86_64 32:9.9.4-72.el7 @anaconda bind-license.noarch 32:9.9.4-72.el7 @anaconda binutils.x86_64 2.27-34.base.el7 @anaconda biosdevname.x86_64 0.7.3-1.el7 @anaconda (...) |
Como la lista es muy extensa, para poder consultarla más fácilmente, podemos combinar la salida, con comandos como “less” o “more”
1 | sudo yum list installed | less |
Para saber si un paquete específico está instalado, podemos filtrar la salida con el comando ‘grep’
Por ejemplo, para saber si el paquete de descompresión está en nuestro sistema:
1 | sudo yum list installed | grep unzip |
Con el resultado:
1 2 | [root@servcentos]# sudo yum list installed | grep unzip unzip.x86_64 6.0-19.el7 @base |
Listar paquetes instalados con RPM
En Centos podemos usar el comando rpm, con la opción ‘-q’ , para consultar los paquetes. En el siguiente ejemplo, listaremos todos los paquetes instalados:
1 | sudo rpm -qa |
A diferencia de yum, rpm nos mostrará solo los nombre de los paquetes.
Para consultar si un paquete determinado está instalado, debemos pasar el nombre del paquete utilizando el parámetro “-q”. Como en el siguiente ejemplo:
1 | sudo rpm -q tmux |
Si el paquete está instalado nos devolverá un mensaje similar al siguiente:
1 2 | [root@servcentos]# sudo rpm -q tmux tmux-1.8-4.el7.x86_64 |
En caso contrario:
1 2 | [root@servcentos]# sudo rpm -q tmux el paquete tmux no está instalado |
Crear una lista de paquetes instalados
Para saber que paquetes tenemos instalados en el sistema, podemos utilizar la salida estándar hacia un fichero, como sigue:
1 | sudo rpm -qa > packages_list.txt |
De esta manera podemos utilizar dicho fichero, para realizar una instalación en otro host:
1 | sudo yum -y install $(cat packages_list.txt) |
Contar el número de paquetes instalados
Para saber cuántos paquetes están instalados en el sistema, podemos combinar el comando con la herramienta “wc”, que se encarga de contar.
1 | sudo rpm -qa | wc -l |
En mi caso:
1 2 | [root@servcentos]# sudo rpm -qa | wc -l 361 |
Espero que estos apuntes os puedan servir en algún momento.
Fuentes consultadas:
Linuxsize.com – How to list installed packages on Centos
Muchas gracias me sirvio mucho
Me alegro, un saludo.
Muchas Gracias !!!
Las personas viven, usan más LINUX que otros sistemas, pero; no lo saben!