Red Hat Linux 7.0: The Official Red Hat Linux Getting Started Guide | ||
---|---|---|
Anterior | Cap�tulo 12. Usar Gnome-RPM y RPM | Siguiente |
Tambi�n puede usar la tecnolog�a RPM tecleando una conjunto de comandos en el prompt de la shell. Est�n a su disposici�n todas las funciones disponibles a trav�s de Gnome-RPM, as� como otras a�adidas como la capacidad de renovar los paquetes, similar a la actualizaci�n (remitas� a la la secci�n de nombre Renovaci�n para m�s informaci�n).
Para m�s informaci�n sobre RPM, Remitas� a los cap�tulos relativos en la Official Red Hat Linux Reference Guide. Tambi�n puede leer las man page relativas tecleando man rpm o el fichero de ayuda, tecleando rpm --help.
Los paquetes RPM titnen t�picamente un nombre de fichero del tipo foo-1.0-1.i386.rpm, que incluye el nombre del paquete (foo), versi�n (1.0), release (1),y arquitectura (i386). Instalar un paquete es muy f�cil:
# rpm -ivh foo-1.0-1.i386.rpm foo #################################### # |
RPM visualiza el nombre del paquete (que no es necesariamente el mismo que el del fichero), y despues visualiza una serie de almohadillas durante la instalaci�n de los paquetes, como una especie de barra progresiva.
Actualmente es posible instalar un paquete con la opci�n upgrade. Para m�s informaci�n, vea la secci�n de nombre Actualizaci�n.
Puede ser que se encuentre con algunos errores, que confirman que el paquete est� ya instalado errores de dependencia que impiden la instalaci�n del paquete.
Para m�s informaci�n sobre el tipo de errores que puede encontrar, siga leyendo.
Si el paquete ya ha sido instalado ,ver�:
# rpm -ivh foo-1.0-1.i386.rpm foo package foo-1.0-1 is already installed error: foo-1.0-1.i386.rpm cannot be installed # |
Si desea de todos modos instalar el paquete, puede usar --replacepkgs en la l�nea de comando, que le dice a RPM que ignore el error:
# rpm -ivh --replacepkgs foo-1.0-1.i386.rpm foo #################################### # |
Si intenta instalar un paquete que contiene un fichero que ya ha sido instalado desde otro paquete, ver�:
# rpm -ivh foo-1.0-1.i386.rpm foo /usr/bin/foo conflicts with file from bar-1.0-1 error: foo-1.0-1.i386.rpm cannot be installed # |
Para que RPM ignore el error, use la opci�n --replacefiles en la linea de comando:
# rpm -ivh --replacefiles foo-1.0-1.i386.rpm foo #################################### # |
Los paquetes RPM pueden "depender" de otros paquetes, lo cual significa que requieren que otros paquetes hayan sido instalados previamente para poder ser ejecutados correctamente. Si intenta instalar un paquete para el que hay una dependencia no resuelta, vera:
# rpm -ivh bar-1.0-1.i386.rpm failed dependencies: foo is needed by bar-1.0-1 # |
Para corregir este error, debe instalar el paquete solicitado. Si desea forzar la instalaci�n de cualquier manera (una mala idea, si tenemos en cuenta que el paquete de todos modos no funcionar� correctamente, use --nodeps en la l�nea de comando).
desinstalar un paquete tambi�n es f�cil:
# rpm -e foo # |
Observe que usamos el nombre del paquete (foo) y no el nombre del fichero del paquete original ("foo-1.0-1.i386.rpm").
Puede encontrar un error de dependencia cuando desinstale un paquete si alg�n otro paquete depende de uno que est� intentando borrar. Por ejemplo:
# rpm -e foo removing these packages would break dependencies: foo is needed by bar-1.0-1 # |
Para que RPM ignore tales errores y desinstale de cualquier manera el paquete (que es una mala idea ya que el paquete que depende del que est� intentando eliminar no funcionar� de manera correcta), use --nodeps sobre la l�nea de comandos.
La actualizaci�n de un paquete es parecida a la instalaci�n.
# rpm -Uvh foo-2.0-1.i386.rpm foo #################################### # |
Cuando efectue la actualizaci�n, RPM desinstalar� automaticamente cualquier versi�n vieja del paquete foo.
Tambi�n puede usar upgrade para instalar los paquetes, ya que trabaja bien aunque no haya versiones precedentes de los paquetes instalados.
# rpm -Uvh foo-1.0-1.i386.rpm foo package foo-2.0-1 (which is newer) is already installed error: foo-1.0-1.i386.rpm cannot be installed # |
Para que RPM realice de todos modos la actualizaci�n, use --oldpackage en la linea de comando:
# rpm -Uvh --oldpackage foo-1.0-1.i386.rpm foo #################################### # |
La renovaci�n de un paquete es similar a la actualizaci�n:
# rpm -Fvh foo-1.2-1.i386.rpm foo #################################### # |
La opci�n Freshen de RPM controla las versiones de los paquetes especificados en la l�nea de comando con aquellos ya instalados en el sistema. Cuando la versi�n nueva de un paquete ya actualizado se elabora desde la funci�n freshen de RPM, ser� automaticamente actualizado. La opci�n freshen de RPM no instala un paquete si no hay una versi�n precedente en el sistema. En esto se diferencia de la opci�n upgrade de RPM, ya que una actualizaci�n instalar� paquetes, independientemente del hecho de que haya o no una versi�n precedente.
Puede consultar la base de datos de los paquetes ya instalados con rpm -q. Usando rpm -q foo visualiza el nombre del paquete, la versi�n, y el n�mero de la versi�n:
# rpm -q foo foo-2.0-1 # |
En vez de especificar el nombre del paquete, puede usar la opci�n siguiente -q para especificar que paquete/s desea consultar. Estas son llamadas opciones para especificar el paquete.
-a consulta todos los paquetes instalados.
-f <file> consulta el paquete que contiene el <file>.
-p <packagefile> consulta el paquete <packagefile>.
Existen muchos modos de especificar que informaci�n debe ser visualizada del paquete interrogado. Las opciones siguientes se usan para seleccionar la informaci�n que est� buscando. Estas se llaman opciones para seleccionar informaci�n .
-i muestra la informaci�n del paquete como el nombre, la descripci�n , el release, el tama�o, la fecha de realizaci�n, la fecha de instalaci�n, el vendedor e informaci�n de otro tipo.
-l muestra la lista de ficheros que contiene el paquete.
-s muestra el estado de todos los ficheros del paquete.
-d muestra una lista de los ficheros de documentaci�n (p�ginas man, p�ginas info, ficheros LEGGIMI, etc.).
-c muestra una lista de los ficheros de configuraci�n. Estos son ficheros que puede eventualmente cambiar despu�s de la instalaci�n, para configurar el paquete de su sistema. (sendmail.cf, passwd, inittab, etc).
A aquellas opciones que se muestran en la lista, puede a�adir -v al comando para hacer la lista similar a la del comando ls -l.
El proceso de verificaci�n de un paquete compara la informaci�n de los ficheros instalados de un paquete con la informaci�n del paquete original. Entre otras cosas la verificaci�n compara los tama�s, MD5 sum, permisos, tipo, propietario y el grupo de cada fichero.
rpm -V verifica un paquete. Puede usar una lista cualquiera de opciones para seleccionar paquetes para consultar los paquetes especificados que desea verificar. Una manera f�cil de hacerlo es con rpm -V foo que verifica que todos los ficheros del paquete fpp sean id�nticos a los instalados originariamente. Por ejemplo:
Para verificar un paquete que contiene unos determinados ficheros:
rpm -Vf /bin/vi |
Para verificar todos los paquetes instalados:
rpm -Va |
Para verificar un paquete instalado con un fichero del paquete RPM:
rpm -Vp foo-1.0-1.i386.rpm |
Si todo es verificado correctamente no habr� outputs. Si hay alguna discrepancia ser� visualizada. El formato del output es una cadena de 8 caracteres, una posible "c" denota un fichero de configuraci�n y despues el nombre del fichero. Cada uno de los caracteres es el resultado de la comparaci�n de un atributo del fichero con el valor del atributo en memoria en la base de datos RPM. Un "." (periodo) significa que la comprobaci�n ha sido correcta. Los siguientes caracteres indican error en alguna de las comprobaciones:
5 -- MD5 checksum
S -- Tama�o del fichero
L -- Enlace simb�lico
T -- tiempo en modificar el fichero
D -- Dispositivo
U -- Usuario
G -- Grupo
M -- Modo (incluye los permisos y el tipo de fichero)
Si ve alg�n output, use su intuici�n para determinar si es necesario eliminar o reinstalar el paquete o en cualquier caso determinar el problema.