20 exemples pràctics d'ordres RPM a Linux
RPM (Red Hat Package Manager) és un codi obert predeterminat i la utilitat de gestió de paquets més popular per a sistemes basats en Red Hat com (RHEL, CentOS i Fedora). L'eina permet als administradors i usuaris del sistema instal·lar, actualitzar, desinstal·lar, consultar, verificar i gestionar paquets de programari del sistema en sistemes operatius Unix/Linux. El fitxer RPM conegut anteriorment com a fitxer .rpm, que inclou programes de programari compilats i biblioteques que necessiten els paquets. Aquesta utilitat només funciona amb paquets construïts en format .rpm.
Aquest article ofereix alguns exemples útils d'ordres de 20 RPM que us poden ser útils. Amb l'ajuda d'aquestes ordres rpm, podeu instal·lar, actualitzar i eliminar paquets dels vostres sistemes Linux.
Alguns fets sobre RPM (Gestor de paquets RedHat)
- RPM és gratuït i es publica sota GPL (llicència pública general).
- RPM manté la informació de tots els paquets instal·lats a la base de dades /var/lib/rpm.
- RPM és l'única manera d'instal·lar paquets en sistemes Linux, si heu instal·lat paquets amb codi font, rpm no el gestionarà.
- RPM s'ocupa dels fitxers .rpm, que conté la informació real sobre els paquets, com ara: què és, d'on prové, informació de dependències, informació de versió, etc.
Hi ha cinc modes bàsics per a l'ordre RPM
- Instal·la: s'utilitza per instal·lar qualsevol paquet RPM.
- Elimina: s'utilitza per esborrar, eliminar o desinstal·lar qualsevol paquet RPM.
- Actualització: s'utilitza per actualitzar el paquet RPM existent.
- Verificar: s'utilitza per verificar un paquet RPM.
- Consulta: s'utilitza per consultar qualsevol paquet RPM.
On trobar paquets RPM
A continuació es mostra la llista de llocs RPM, on podeu trobar i descarregar tots els paquets RPM.
- http://rpmfind.net
- http://www.redhat.com
- http://freshrpms.net/
- http://rpm.pbone.net/
Llegeix també:
- 20 exemples d'ordres YUM a Linux
- 10 exemples d'ordres Wget a Linux
- 30 ordres Linux més útils per a administradors de sistemes
Recordeu que heu de ser usuari root quan instal·leu paquets a Linux, amb els privilegis root podeu gestionar les ordres rpm amb les seves opcions adequades.
1. Com comprovar un paquet de signatura RPM
Comproveu sempre la signatura PGP dels paquets abans d'instal·lar-los als vostres sistemes Linux i assegureu-vos que la seva integritat i origen siguin correctes. Utilitzeu l'ordre següent amb l'opció –checksig (comprova la signatura) per comprovar la signatura d'un paquet anomenat pidgin.
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. Com instal·lar un paquet RPM
Per instal·lar un paquet de programari rpm, utilitzeu l'ordre següent amb l'opció -i. Per exemple, per instal·lar un paquet rpm anomenat pidgin-2.7.9-5.el6.2.i686.rpm.
rpm -ivh pidgin-2.7.9-5.el6.2.i686.rpm Preparing... ########################################### [100%] 1:pidgin ########################################### [100%]
- -i : instal·la un paquet
- -v : detallat per a una visualització més agradable
- -h: imprimeix les marques hash a mesura que l'arxiu de paquets es desempaqueta.
3. Com comprovar les dependències del paquet RPM abans d'instal·lar-lo
Suposem que voleu fer una comprovació de dependència abans d'instal·lar o actualitzar un paquet. Per exemple, utilitzeu l'ordre següent per comprovar les dependències del paquet BitTorrent-5.2.2-1-Python2.4.noarch.rpm. Mostrarà la llista de dependències del paquet.
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
- -q : consulta un paquet
- -p : llista les capacitats que ofereix aquest paquet.
- -R: llista les capacitats de les quals depèn aquest paquet...
4. Com instal·lar un paquet RPM sense dependències
Si sabeu que tots els paquets necessaris ja estan instal·lats i que RPM està sent estúpid, podeu ignorar aquestes dependències utilitzant l'opció –nodeps (no verificació de dependències) abans d'instal·lar el paquet.
rpm -ivh --nodeps BitTorrent-5.2.2-1-Python2.4.noarch.rpm Preparing... ########################################### [100%] 1:BitTorrent ########################################### [100%]
L'ordre anterior instal·la força el paquet rpm ignorant els errors de dependències, però si falten aquests fitxers de dependència, el programa no funcionarà en absolut fins que no els instal·leu.
5. Com comprovar un paquet RPM instal·lat
Si feu servir l'opció -q amb el nom del paquet, es mostrarà si s'ha instal·lat un rpm o no.
rpm -q BitTorrent BitTorrent-5.2.2-1.noarch
6. Com llistar tots els fitxers d'un paquet RPM instal·lat
Per veure tots els fitxers d'un paquet rpm instal·lat, utilitzeu -ql (llista de consultes) amb l'ordre rpm.
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. Com llistar els paquets RPM instal·lats recentment
Utilitzeu l'ordre rpm següent amb l'opció -qa (consulta tot), llistarà tots els paquets rpm instal·lats recentment.
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. Com llistar tots els paquets RPM instal·lats
Escriviu l'ordre següent per imprimir tots els noms dels paquets instal·lats al vostre sistema Linux.
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. Com actualitzar un paquet RPM
Si volem actualitzar qualsevol paquet RPM, s'utilitzarà l'opció “–U” (actualització). Un dels principals avantatges d'utilitzar aquesta opció és que no només actualitzarà l'última versió de qualsevol paquet, sinó que també mantindrà la còpia de seguretat del paquet anterior, de manera que en cas que el paquet actualitzat més recent no executi el paquet instal·lat anteriorment. es pot tornar a utilitzar.
rpm -Uvh nx-3.5.0-2.el6.centos.i686.rpm Preparing... ########################################### [100%] 1:nx ########################################### [100%]
10. Com eliminar un paquet RPM
Per desinstal·lar un paquet RPM, per exemple, utilitzem el nom del paquet nx, no el nom del paquet original nx-3.5.0-2.el6.centos.i686.rpm. L'opció -e (esborrar) s'utilitza per eliminar el paquet.
rpm -evv nx
11. Com eliminar un paquet RPM sense dependències
L'opció –nodeps (No comproveu les dependències) elimina amb força el paquet rpm del sistema. Però tingueu en compte que eliminar un paquet determinat pot trencar altres aplicacions de treball.
rpm -ev --nodeps vsftpd
12. Com consultar un fitxer que pertany a quin paquet RPM
Posem per cas que teniu una llista de fitxers i us agradaria saber quin paquet pertany a aquests fitxers. Per exemple, l'ordre següent amb l'opció -qf (fitxer de consulta) us mostrarà un fitxer /usr/bin/htpasswd propi del paquet httpd-tools-2.2.15-15.el6.centos.1.i686.
rpm -qf /usr/bin/htpasswd httpd-tools-2.2.15-15.el6.centos.1.i686
13. Com consultar una informació del paquet RPM instal·lat
Suposem que heu instal·lat un paquet rpm i voleu conèixer la informació sobre el paquet. La següent opció -qi (informació de consulta) imprimirà la informació disponible del paquet instal·lat.
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. Obteniu la informació del paquet RPM abans d'instal·lar-lo
Heu descarregat un paquet d'Internet i voleu conèixer la informació d'un paquet abans d'instal·lar-lo. Per exemple, la següent opció -qip (paquet d'informació de consulta) imprimirà la informació d'un paquet sqlbuddy.
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. Com consultar la documentació del paquet RPM instal·lat
Per obtenir la llista de la documentació disponible d'un paquet instal·lat, utilitzeu l'ordre següent amb l'opció -qdf (fitxer de document de consulta) mostrarà les pàgines del manual relacionades amb el paquet vmstat.
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. Com verificar un paquet RPM
La verificació d'un paquet compara la informació dels fitxers instal·lats del paquet amb la base de dades rpm. El -Vp (verificar paquet) s'utilitza per verificar un paquet.
rpm -Vp sqlbuddy-1.3.3-1.noarch.rpm S.5....T. c /etc/httpd/conf.d/sqlbuddy.conf
17. Com verificar tots els paquets RPM
Escriviu l'ordre següent per verificar tots els paquets rpm instal·lats.
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. Com importar una clau RPM GPG
Per verificar els paquets RHEL/CentOS/Fedora, heu d'importar la clau GPG. Per fer-ho, executeu l'ordre següent. Importarà la clau GPG de CentOS 6.
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
19. Com llistar totes les claus GPG RPM importades
Per imprimir totes les claus GPG importades al vostre sistema, utilitzeu l'ordre següent.
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. Com reconstruir la base de dades RPM danyada
De vegades, la base de dades rpm es corromp i atura tota la funcionalitat de rpm i altres aplicacions del sistema. Per tant, en aquest moment hem de reconstruir la base de dades rpm i restaurar-la amb l'ajuda de la següent comanda.
cd /var/lib rm __db* rpm --rebuilddb rpmdb_verify Packages