Comandos RPM

RPM Package Manager (o RPM, originalmente llamado Red Hat Package Manager) es una herramienta de administración de paquetes pensada básicamente para Linux. Es capaz de instalar, actualizar, desinstalar, verificar y solicitar programas. RPM es el formato de paquete de partida del Linux Standard Base. Wikipedia

Originalmente desarrollado por Red Hat para Red Hat Linux, en la actualidad muchas distribuciones GNU/Linux lo usan, dentro de las cuales las más destacadas son Fedora Linux, MandrivaLinux, SuSE Linux y Conectiva Linux. También se ha portado a otros sistemas operativos.

A continuación explico los comandos básicos para la gestion de paquetería RPM, instalar, desinstalar, actualizar, buscar, etc.

Instalación de paquetes RPM

# rpm -ivh foo-2.0-4.i386.rpm
# rpm -i ftp://ftp.redhat.com/pub/redhat/RPMS/foo-1.0-1.i386.rpm
# rpm -i http://oss.oracle.com/projects/firewire/dist/files/kernel-2.4.20-18.10.1.i686.rpm

Como podéis observar, podemos instalar paquetes RPM descargardos en el propio sistema además de hacerlo directamente vía ftp o http. En cuanto a los parámetros, -i es de install, -v de verbose y -h de hash, podéis verlo en la ayuda del propio comando (–help o man)

Desinstalar paquetes RPM

# rpm -e foo

Actualizar paquetes RPM

# rpm -Uvh foo-1.0-2.i386.rpm
# rpm -Uvh ftp://ftp.redhat.com/pub/redhat/RPMS/foo-1.0-1.i386.rpm
# rpm -Uvh http://oss.oracle.com/projects/firewire/dist/files/kernel-2.4.20-18.10.1.i686.rpm

Lo que hacemos al actualizar de este modo vía rpm es desinstalar el paquete antiguo e instalar el nuevo, también soporta el protocolo ftp y http.

Listar todos los paquetes RPM instalados en el sistema

# rpm -qa

Esta orden listará todos los paquetes instalados en el sistema.

Listar determinados paquetes RPM

# rpm -q foo

De este modo listamos la información de un determinado paquete, su nombre, versión, etc.

Listar información de un paquete RPM

# rpm -qi foo

Listar ficheros de un paquete RPM instalado

# rpm -ql foo

Verificar firma de un paquete RPM

# rpm --checksig foo

Por supuesto, “foo” es un ejemplo de paquete… ;)

Traducido y adaptado de RPM Commands.

6 comentarios en “Comandos RPM

  1. POR favor si alguien me podria por que no puedo instalar un paquete en RPM me sale un mensaje como este

    rpm -ivh gnome-mplayer-0.9.2-1.fc10.src.rpm
    advertencia:gnome-mplayer-0.9.2-1.fc10.src.rpm: CabeceraV3 DSA signature: NOKEY, key ID 49c8885a
    1:gnome-mplayer advertencia:usuario mockbuild no existe – utilizando root
    advertencia:grupo mockbuild no existe – utilizando root
    ########################################### [100%]
    advertencia:usuario mockbuild no existe – utilizando root
    advertencia:grupo mockbuild no existe – utilizando root

    ojala me puedan ayudar gracias

  2. Fakis, por lo que muestras solamente aparece un Warning, el paquete debería haberse instalado correctamente.

    Si quisieras que no te saliera dicho aviso, simplement tendrías que instalar la llave correspondiente a ese paquete/repositorio

    Saludos.

  3. Un poco tarde mi respuesta pero espero le sirva a otros.

    El problema es que estas tratando de instalar el paquete source (nota el .src en la extension).

    Para usar rpm -ivh debes utilizar el paquete compilado de acuerdo a la arquitectura de tu maquina (por ejemplo, los paquetes rpm con extension .i386, .x86_64, .ppc, .ppc64, etc.).

    Si no sabes cual usar, puedes llamar al comando “uname -a”. Este es un posible output:
    Linux localhost.localdomain 2.6.23.8-34.fc7 #1 SMP Thu Nov 22 23:05:33 EST 2007 i686 i686 i386 GNU/Linux

    De ahi puedes tomar los datos que necesitas para escoger el paquete rpm. En tu caso seria probablemente gnome-mplayer-0.9.2-4.fc10.i386.rpm

  4. advertencia:samba-3.0.33-3.7.el5.i386.rpm: CabeceraV3 DSA signature: NOKEY, key ID 37017186
    error: Error de dependencias:
    perl(Convert::ASN1) se necesita para samba-3.0.33-3.7.el5.i386

    busque el significado del ID pero no sale
    saludos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *