Documentos de Académico
Documentos de Profesional
Documentos de Cultura
RPM
noviembre 6, 2011 3 comentarios
En este post, muestro algunos comandos para administrar paquetes de tipo RPM en Red Hat. Este
tipo de paquetes también se pueden usar en otras distribuciones de Linux como Cent OS u Oracle
Enterprise Linux. También, a través de una herramientas especiales en Ubuntu o Fedora.
Muy bien, entonces aquí, les muestro cómo realizar distintas actividades con estos paquetes cuyo
nombre viene de Red Hat Package Manager.
Cada paquete viene con diversas librerías que son requeridas para diversas tareas. Por ejemplo, en
una instalación de algún producto de Oracle, puede ser requerido un paquete RPM en especial,
estos deberán ser instalados de manera previa para poder facilitar el funcionamiento del instalador
de Oracle llamado Oracle Universal Installer.
Recomendación inicial
Les recomiendo ampliamente, que si requieren instalar un paquete RPM, estos sean buscados
primero en el CD o DVD de instalación del Red Hat.
Si no cuentan con este, entonces la siguiente zona de búsqueda es en la página oficial de Red Hat
suponiendo que tienen un servicio pagado.
Al final, si no cuentan con los dos primeros, entonces pueden ir a RPM pbone y buscar el paquete
correspondiente. Si es así, les recomiendo seguir el mismo estándar de versión de paquetes que los
instalados actualmente en el sistema operativo.
Muy bien, entonces pasemos a las distintas actividades que se pueden hacer con un paquete RPM:
Mostrar información
Cuando se quiere ver la información de un paquete RPM, se tiene que usar el comando:
rpm -qip nombre_de_paquete.rpm
Por ejemplo:
[root@localhost ~]# rpm -qip libgomp-4.4.4-13.el5.i386.rpm
warning: libgomp-4.4.4-13.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID
37017186
Name : libgomp Relocations: (not relocatable)
Version : 4.4.4 Vendor: Red Hat, Inc.
Release : 13.el5 Build Date: Wed 01 Sep 2010 04:25:00
PM PDT
Install Date: (not installed) Build Host: ls20-bc2-
14.build.redhat.com
Group : System Environment/Libraries Source RPM: gcc44-4.4.4-
13.el5.src.rpm
Size : 99291 License: GPLv3+ and GPLv3+ with
exceptions and GPLv2+ with exceptions
Signature : DSA/SHA1, Tue 07 Dec 2010 05:26:59 AM PST, Key ID 5326810137017186
Packager : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
URL : http://gcc.gnu.org
Summary : GCC OpenMP 2.5 shared support library
Description :
This package contains GCC shared support library which is needed
for OpenMP 2.5 support.
Por ejemplo, el siguiente comando nos muestra todos los paquetes que existen en el sistema:
[root@metallilaptop]# rpm -qa
tzdata-2008i-1.el5
rmt-0.4b41-2.fc6
gnome-mime-data-2.4.2-3.1
specspo-13-1.el5
rootfiles-8.1-1.1.1
emacs-leim-21.4-20.el5
chkconfig-1.3.30.1-2
mktemp-1.5-23.2.2
expat-1.95.8-8.2.1
bash-3.2-24.el5
libsepol-1.15.2-1.el5
freetype-2.2.1-20.el5_2
cyrus-sasl-lib-2.1.22-4
atk-1.12.2-1.fc6
gdbm-1.8.0-26.2.1
diffutils-2.8.1-15.2.3.el5
... etcétera
Verificación de pre-requisitos
Antes de instalar un paquete, se debe verificar los pre-requisitos que tiene, para evitar que nos
marque error al momento de la instalación. Para hacer esto, se usa el comando:
rpm -qRp nombre_de_paquete.rpm
Por ejemplo:
[root@metallilaptop]# rpm -qRp gcc-4.1.2-51.el5.i386.rpm
warning: gcc-4.1.2-51.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID
37017186
/bin/sh
/bin/sh
/bin/sh
/sbin/install-info
binutils >= 2.17.50.0.2-8
cpp = 4.1.2-51.el5
glibc-devel >= 2.2.90-12
libc.so.6
libc.so.6(GLIBC_2.0)
libc.so.6(GLIBC_2.1)
libc.so.6(GLIBC_2.2)
libc.so.6(GLIBC_2.3)
libc.so.6(GLIBC_2.4)
libgcc >= 4.1.2-51.el5
libgcc_s.so.1
libgomp >= 4.1.2-51.el5
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(VersionedDependencies) <= 3.0.3-1
rtld(GNU_HASH)
Si un paquete requiere de un previo y este, no está instalado, deberá ser instalado de manera previa.
Instalación
Para instalar un paquete de tipo RPM, se usa el siguiente comando:
rpm -Uvh [--replacepkgs] [--nodeps] nombre_de_paquete.rpm
Listar el contenido
Para ver las librerías que contiene un RPM, se ejecuta el siguiente comando:
rpm -qlp nombre_de_paquete.rpm
Por ejemplo:
[root@localhost ~]# rpm -qlp libgomp-4.4.4-13.el5.i386.rpm
warning: libgomp-4.4.4-13.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID
37017186
/usr/lib/libgomp.so.1
/usr/lib/libgomp.so.1.0.0
/usr/share/doc/libgomp-4.4.4
/usr/share/doc/libgomp-4.4.4/ChangeLog.bz2
/usr/share/info/libgomp.info.gz
Desinstalación
Cuando se desea desinstalar un RPM, se usa el comando:
rpm -ev nombre_de_paquete
Nota. El nombre del paquete, es como está instalado en el sistema operativo, sin
.rpm
Un ejercicio completo
Aquí les muestro un ejercicio completo de una instalación de un paquete de flash para ver
animaciones de internet.
1. Verificar si existe el paquete en el sistema operativo:
[root@localhost ~]# rpm -qa | grep flash
[root@localhost ~]# <--- ¡No existe!
3. Como requiere que glibc sea de una versión mayor a la 2.4, verificar la versión de glibc instalada:
[root@localhost ~]# rpm -qa | grep glibc
glibc-headers-2.5-49
glibc-common-2.5-49
glibc-devel-2.5-49
glibc-2.5-49