Búsqueda de sitios web

20 ejemplos prácticos de comandos RPM en Linux


RPM (Red Hat Package Manager) es una utilidad de administración de paquetes de código abierto predeterminada y la más popular para sistemas basados en Red Hat como (RHEL , CentOS y Fedora). La herramienta permite a los administradores y usuarios del sistema instalar, actualizar, desinstalar, consultar, verificar y gestionar paquetes de software del sistema en sistemas operativos Unix/Linux. El archivo RPM anteriormente conocido como archivo .rpm, que incluye programas de software compilados y bibliotecas que necesitan los paquetes. Esta utilidad solo funciona con paquetes creados en formato .rpm.

Este artículo proporciona algunos ejemplos de comandos de 20 RPM útiles que pueden resultarle útiles. Con la ayuda de estos comandos rpm, puede instalar, actualizar y eliminar paquetes en sus sistemas Linux.

Algunos datos sobre RPM (Administrador de paquetes RedHat)

  1. RPM es gratuito y se publica bajo GPL (Licencia pública general).
  2. RPM mantiene la información de todos los paquetes instalados en la base de datos /var/lib/rpm.
  3. RPM es la única forma de instalar paquetes en sistemas Linux; si ha instalado paquetes usando el código fuente, entonces rpm no los administrará.
  4. RPM trata con archivos .rpm, que contienen información real sobre los paquetes, como por ejemplo: qué es, de dónde viene, >información de dependencias, información de versión, etc.

Hay cinco modos básicos para el comando RPM

  1. Instalar: Se utiliza para instalar cualquier paquete RPM.
  2. Eliminar: Se utiliza para borrar, eliminar o desinstalar cualquier paquete RPM.
  3. Actualizar: Se utiliza para actualizar el paquete RPM existente.
  4. Verificar: Se utiliza para verificar paquetes RPM.
  5. Consulta: Se utiliza para consultar cualquier paquete RPM.

Dónde encontrar paquetes RPM

A continuación se muestra la lista de sitios rpm, donde puede encontrar y descargar todos los paquetes RPM.

  1. http://rpmfind.net
  2. http://www.redhat.com
  3. http://freshrpms.net/
  4. http://rpm.pbone.net/

Leer también:

  1. 20 ejemplos de comandos YUM en Linux
  2. 10 ejemplos de comandos Wget en Linux
  3. Los 30 comandos de Linux más útiles para administradores de sistemas

Recuerde que debe ser usuario root al instalar paquetes en Linux, con los privilegios de root puede administrar los comandos rpm con sus opciones apropiadas.

1. Cómo verificar un paquete exclusivo de RPM

Verifique siempre la firma PGP de los paquetes antes de instalarlos en sus sistemas Linux y asegúrese de que su integridad y origen estén correctos. Utilice el siguiente comando con la opción –checksig (verificar firma) para verificar la firma de un paquete llamado pidgin.

[root@tecmint]# rpm --checksig pidgin-2.7.9-5.el6.2.i686.rpm

pidgin-2.7.9-5.el6.2.i686.rpm: rsa sha1 (md5) pgp md5 OK

2. Cómo instalar un paquete RPM

Para instalar un paquete de software rpm, utilice el siguiente comando con la opción -i. Por ejemplo, para instalar un paquete rpm llamado pidgin-2.7.9-5.el6.2.i686.rpm.

[root@tecmint]# rpm -ivh pidgin-2.7.9-5.el6.2.i686.rpm

Preparing...                ########################################### [100%]
   1:pidgin                 ########################################### [100%]
Comando RPM y opciones
  1. -i: instalar un paquete
  2. -v: detallado para una visualización más agradable
  3. -h: imprime marcas de almohadilla a medida que se descomprime el archivo del paquete.

3. Cómo verificar las dependencias del paquete RPM antes de instalarlo

Supongamos que desea realizar una verificación de dependencia antes de instalar o actualizar un paquete. Por ejemplo, utilice el siguiente comando para comprobar las dependencias del paquete BitTorrent-5.2.2-1-Python2.4.noarch.rpm. Mostrará la lista de dependencias del paquete.

[root@tecmint]# rpm -qpR BitTorrent-5.2.2-1-Python2.4.noarch.rpm

/usr/bin/python2.4
python >= 2.3
python(abi) = 2.4
python-crypto >= 2.0
python-psyco
python-twisted >= 2.0
python-zopeinterface
rpmlib(CompressedFileNames) = 2.6
Comando RPM y opciones
  1. -q: consultar un paquete
  2. -p: enumera las capacidades que proporciona este paquete.
  3. -R: Lista las capacidades de las que depende este paquete.

4. Cómo instalar un paquete RPM sin dependencias

Si sabe que todos los paquetes necesarios ya están instalados y RPM simplemente está siendo estúpido, puede ignorar esas dependencias usando la opción –nodeps (sin verificación de dependencias) antes de instalar el paquete.

[root@tecmint]# rpm -ivh --nodeps BitTorrent-5.2.2-1-Python2.4.noarch.rpm

Preparing...                ########################################### [100%]
   1:BitTorrent             ########################################### [100%]

El comando anterior instala a la fuerza el paquete rpm ignorando los errores de dependencias, pero si faltan esos archivos de dependencia, el programa no funcionará en absoluto hasta que los instale.

5. Cómo verificar un paquete RPM instalado

El uso de la opción -q con el nombre del paquete mostrará si hay un rpm instalado o no.

[root@tecmint]# rpm -q BitTorrent

BitTorrent-5.2.2-1.noarch

6. Cómo enumerar todos los archivos de un paquete RPM instalado

Para ver todos los archivos de un paquete rpm instalado, utilice el comando -ql (lista de consultas) con rpm.

[root@tecmint]# rpm -ql BitTorrent

/usr/bin/bittorrent
/usr/bin/bittorrent-console
/usr/bin/bittorrent-curses
/usr/bin/bittorrent-tracker
/usr/bin/changetracker-console
/usr/bin/launchmany-console
/usr/bin/launchmany-curses
/usr/bin/maketorrent
/usr/bin/maketorrent-console
/usr/bin/torrentinfo-console

7. Cómo enumerar los paquetes RPM instalados recientemente

Utilice el siguiente comando rpm con la opción -qa (consultar todo), enumerará todos los paquetes rpm instalados recientemente.

[root@tecmint]# rpm -qa --last

BitTorrent-5.2.2-1.noarch                     Tue 04 Dec 2012 05:14:06 PM BDT
pidgin-2.7.9-5.el6.2.i686                     Tue 04 Dec 2012 05:13:51 PM BDT
cyrus-sasl-devel-2.1.23-13.el6_3.1.i686       Tue 04 Dec 2012 04:43:06 PM BDT
cyrus-sasl-2.1.23-13.el6_3.1.i686             Tue 04 Dec 2012 04:43:05 PM BDT
cyrus-sasl-md5-2.1.23-13.el6_3.1.i686         Tue 04 Dec 2012 04:43:04 PM BDT
cyrus-sasl-plain-2.1.23-13.el6_3.1.i686       Tue 04 Dec 2012 04:43:03 PM BDT

8. Cómo enumerar todos los paquetes RPM instalados

Escriba el siguiente comando para imprimir todos los nombres de los paquetes instalados en su sistema Linux.

[root@tecmint]# rpm -qa

initscripts-9.03.31-2.el6.centos.i686
polkit-desktop-policy-0.96-2.el6_0.1.noarch
thunderbird-17.0-1.el6.remi.i686

9. Cómo actualizar un paquete RPM

Si queremos actualizar algún paquete RPM se utilizará la opción “–U” (upgrade). Una de las principales ventajas de usar esta opción es que no solo actualizará la última versión de cualquier paquete, sino que también mantendrá la copia de seguridad del paquete anterior para que, en caso de que el paquete actualizado más nuevo no ejecute el paquete instalado previamente. se puede volver a utilizar.

[root@tecmint]# rpm -Uvh nx-3.5.0-2.el6.centos.i686.rpm
Preparing...                ########################################### [100%]
   1:nx                     ########################################### [100%]

10. Cómo eliminar un paquete RPM

Para desinstalar un paquete RPM, por ejemplo usamos el nombre del paquete nx, no el nombre del paquete original nx-3.5.0-2.el6.centos.i686.rpm . La opción -e (borrar) se utiliza para eliminar el paquete.

[root@tecmint]# rpm -evv nx

11. Cómo eliminar un paquete RPM sin dependencias

La opción –nodeps (No comprobar dependencias) elimina por la fuerza el paquete rpm del sistema. Pero tenga en cuenta que eliminar un paquete en particular puede dañar otras aplicaciones en funcionamiento.

[root@tecmint]# rpm -ev --nodeps vsftpd

12. Cómo consultar un archivo que pertenece a qué paquete RPM

Digamos que tiene una lista de archivos y le gustaría saber qué paquete pertenece a esos archivos. Por ejemplo, el siguiente comando con la opción -qf (consultar archivo) le mostrará un archivo /usr/bin/htpasswd que pertenece al paquete. httpd-tools-2.2.15-15.el6.centos.1.i686.

[root@tecmint]# rpm -qf /usr/bin/htpasswd

httpd-tools-2.2.15-15.el6.centos.1.i686

13. Cómo consultar información del paquete RPM instalado

Digamos que ha instalado un paquete rpm y desea conocer la información sobre el paquete. La siguiente opción -qi (consultar información) imprimirá la información disponible del paquete instalado.

[root@tecmint]# rpm -qi vsftpd

Name        : vsftpd				   Relocations: (not relocatable)
Version     : 2.2.2				   Vendor: CentOS
Release     : 11.el6				   Build Date: Fri 22 Jun 2012 01:54:24 PM BDT
Install Date: Mon 17 Sep 2012 07:55:28 PM BDT      Build Host: c6b8.bsys.dev.centos.org
Group       : System Environment/Daemons           Source RPM: vsftpd-2.2.2-11.el6.src.rpm
Size        : 351932                               License: GPLv2 with exceptions
Signature   : RSA/SHA1, Mon 25 Jun 2012 04:07:34 AM BDT, Key ID 0946fca2c105b9de
Packager    : CentOS BuildSystem <http://bugs.centos.org>
URL         : http://vsftpd.beasts.org/
Summary     : Very Secure Ftp Daemon
Description :
vsftpd is a Very Secure FTP daemon. It was written completely from
scratch.

14. Obtenga la información del paquete RPM antes de instalarlo

Ha descargado un paquete de Internet y desea conocer la información de un paquete antes de instalarlo. Por ejemplo, la siguiente opción -qip (consultar información del paquete) imprimirá la información de un paquete sqlbuddy.

[root@tecmint]# rpm -qip sqlbuddy-1.3.3-1.noarch.rpm

Name        : sqlbuddy                     Relocations: (not relocatable)
Version     : 1.3.3                        Vendor: (none)
Release     : 1                            Build Date: Wed 02 Nov 2011 11:01:21 PM BDT
Install Date: (not installed)              Build Host: rpm.bar.baz
Group       : Applications/Internet        Source RPM: sqlbuddy-1.3.3-1.src.rpm
Size        : 1155804                      License: MIT
Signature   : (none)
Packager    : Erik M Jacobs
URL         : http://www.sqlbuddy.com/
Summary     : SQL Buddy â Web based MySQL administration
Description :
SQLBuddy is a PHP script that allows for web-based MySQL administration.

15. Cómo consultar la documentación del paquete RPM instalado

Para obtener la lista de documentación disponible de un paquete instalado, use el siguiente comando con la opción -qdf (consultar archivo de documento) para mostrar las páginas del manual relacionadas con el paquete vmstat.

[root@tecmint]# rpm -qdf /usr/bin/vmstat

/usr/share/doc/procps-3.2.8/BUGS
/usr/share/doc/procps-3.2.8/COPYING
/usr/share/doc/procps-3.2.8/COPYING.LIB
/usr/share/doc/procps-3.2.8/FAQ
/usr/share/doc/procps-3.2.8/NEWS
/usr/share/doc/procps-3.2.8/TODO

16. Cómo verificar un paquete RPM

La verificación de un paquete compara la información de los archivos instalados del paquete con la base de datos rpm. El -Vp (verificar paquete) se utiliza para verificar un paquete.

[root@tecmint downloads]# rpm -Vp sqlbuddy-1.3.3-1.noarch.rpm

S.5....T.  c /etc/httpd/conf.d/sqlbuddy.conf

17. Cómo verificar todos los paquetes RPM

Escriba el siguiente comando para verificar todos los paquetes rpm instalados.

[root@tecmint]# rpm -Va

S.5....T.  c /etc/rc.d/rc.local
.......T.  c /etc/dnsmasq.conf
.......T.    /etc/ld.so.conf.d/kernel-2.6.32-279.5.2.el6.i686.conf
S.5....T.  c /etc/yum.conf
S.5....T.  c /etc/yum.repos.d/epel.repo

18. Cómo importar una clave GPG RPM

Para verificar los paquetes RHEL/CentOS/Fedora, debe importar la clave GPG. Para hacerlo, ejecute el siguiente comando. Importará la clave GPG CentOS 6.

[root@tecmint]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

19. Cómo enumerar todas las claves GPG RPM importadas

Para imprimir todas las claves GPG importadas en su sistema, utilice el siguiente comando.

[root@tecmint]# rpm -qa gpg-pubkey*

gpg-pubkey-0608b895-4bd22942
gpg-pubkey-7fac5991-4615767f
gpg-pubkey-0f2672c8-4cd950ee
gpg-pubkey-c105b9de-4e0fd3a3
gpg-pubkey-00f97f56-467e318a
gpg-pubkey-6b8d79e6-3f49313d
gpg-pubkey-849c449f-4cb9df30

20. Cómo reconstruir una base de datos RPM corrupta

A veces, la base de datos rpm se corrompe y detiene todas las funciones de rpm y otras aplicaciones del sistema. Entonces, en ese momento necesitamos reconstruir la base de datos rpm y restaurarla con la ayuda del siguiente comando.

[root@tecmint]# cd /var/lib
[root@tecmint]# rm __db*
[root@tecmint]# rpm --rebuilddb
[root@tecmint]# rpmdb_verify Packages