20 Praktični primeri ukazov RPM v Linuxu
RPM (Red Hat Package Manager) je privzeti odprtokodni in najbolj priljubljen pripomoček za upravljanje paketov za sisteme, ki temeljijo na Red Hat, kot so (RHEL, CentOS in Fedora). Orodje sistemskim skrbnikom in uporabnikom omogoča namestitev, posodabljanje, odstranjevanje, poizvedovanje, preverjanje in upravljanje sistemskih paketov programske opreme v operacijskih sistemih Unix/Linux. RPM, prej znana kot .rpm datoteka, ki vključuje prevedeno programsko opremo in knjižnice, ki jih potrebujejo paketi. Ta pripomoček deluje samo s paketi, ki temeljijo na formatu .rpm.
Ta članek vsebuje nekaj uporabnih primerov ukazov za 20 vrtljajev na minuto, ki so vam lahko v pomoč. S pomočjo tega ukaza rpm vam je uspelo namestiti, posodobiti in odstraniti pakete v vaših sistemih Linux.
Nekaj dejstev o RPM (RedHat Package Manager)
- RPM je brezplačen in objavljen pod GPL (General Public License).
- RPM hrani podatke o vseh nameščenih paketih v zbirki podatkov/var/lib/rpm.
- RPM je edini način namestitve paketov v sistemih Linux. Če ste pakete namestili z izvorno kodo, ga rpm ne bo upravljal.
- RPM obravnava datoteke .rpm, ki vsebujejo dejanske informacije o paketih, kot so: kaj je, od kod prihaja, informacije o odvisnostih, informacije o različici itd.
Obstaja pet osnovnih načinov za ukaz RPM
- Namesti: Uporablja se za namestitev katerega koli paketa RPM.
- Odstrani: Uporablja se za brisanje, odstranjevanje ali odstranjevanje katerega koli paketa RPM.
- Nadgradnja: Uporablja se za posodobitev obstoječega paketa RPM.
- Preveri: Uporablja se za preverjanje paketov RPM.
- Poizvedba: Uporablja se za poizvedbe v katerem koli paketu RPM.
Kje najti pakete RPM
Spodaj je seznam rpm mest, kjer lahko najdete in prenesete vse pakete RPM.
- http://rpmfind.net
- http://www.redhat.com
- http://freshrpms.net/
- http://rpm.pbone.net/
Preberite tudi:
- 20 primerov ukazov YUM v Linuxu
- 10 primerov ukazov Wget v Linuxu
- 30 najbolj uporabnih ukazov za sistemske skrbnike Linuxa
Ne pozabite, da morate biti pri nameščanju paketov v Linux korenski uporabnik, s korenskimi privilegiji lahko upravljate ukaze rpm z ustreznimi možnostmi.
1. Kako preveriti paket podpisov RPM
Pred namestitvijo paketov v svoje sisteme Linux vedno preverite podpis PGP in se prepričajte, da sta njegova celovitost in izvor v redu. Z naslednjim ukazom z možnostjo –checksig (preveri podpis) preverite podpis paketa, imenovanega 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. Kako namestiti paket RPM
Za namestitev programskega paketa rpm uporabite naslednji ukaz z možnostjo -i. Na primer za namestitev paketa vrtljajev v minuti, imenovanega 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: namestite paket
- -v: podrobno za lepši prikaz
- -h: natisnite zgoščene oznake, ko je arhiv paketov razpakiran.
3. Kako preveriti odvisnosti paketa RPM pred namestitvijo
Recimo, da želite pred namestitvijo ali nadgradnjo paketa preveriti odvisnost. Na primer z naslednjim ukazom preverite odvisnosti paketa BitTorrent-5.2.2-1-Python2.4.noarch.rpm. Prikazal bo seznam odvisnosti paketa.
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: Poizvedite paket
- -p: Seznam zmogljivosti, ki jih ponuja ta paket.
- -R: Seznam zmogljivosti, od katerih je odvisen ta paket ..
4. Kako namestiti paket RPM brez odvisnosti
Če veste, da so vsi potrebni paketi že nameščeni in je RPM samo neumen, lahko te odvisnosti prezrete tako, da pred namestitvijo paketa uporabite možnost –nodeps (brez preverjanja odvisnosti).
rpm -ivh --nodeps BitTorrent-5.2.2-1-Python2.4.noarch.rpm Preparing... ########################################### [100%] 1:BitTorrent ########################################### [100%]
Zgornji ukaz prisilno namesti paket rpm z ignoriranjem napak odvisnosti, če pa te datoteke odvisnosti manjkajo, program sploh ne bo deloval, dokler jih ne namestite.
5. Kako preveriti nameščen paket RPM
Z uporabo možnosti -q z imenom paketa bo prikazano, ali je število vrtljajev na minuto nameščeno ali ne.
rpm -q BitTorrent BitTorrent-5.2.2-1.noarch
6. Kako našteti vse datoteke nameščenega paketa RPM
Če si želite ogledati vse datoteke nameščenih paketov rpm, uporabite -ql (seznam poizvedb) z ukazom 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. Kako seznam nedavno nameščenih paketov RPM
Uporabite naslednji ukaz rpm z možnostjo -qa (poizvedi vse), v katerem bodo navedeni vsi nedavno nameščeni paketi rpm.
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. Kako seznam vseh nameščenih paketov RPM
Vnesite naslednji ukaz, da natisnete vsa imena nameščenih paketov v vašem sistemu 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. Kako nadgraditi paket RPM
Če želimo nadgraditi kateri koli paket RPM, bo uporabljena možnost – –U (nadgradnja). Ena glavnih prednosti uporabe te možnosti je, da ne bo le nadgradila najnovejše različice katerega koli paketa, temveč bo ohranila tudi varnostno kopijo starejšega paketa, tako da v primeru, če novejši nadgrajeni paket ne bo zagnal prej nameščenega se lahko ponovno uporabi.
rpm -Uvh nx-3.5.0-2.el6.centos.i686.rpm Preparing... ########################################### [100%] 1:nx ########################################### [100%]
10. Kako odstraniti paket RPM
Za odstranitev paketa RPM, na primer, uporabimo ime paketa nx, ne prvotno ime paketa nx-3.5.0-2.el6.centos.i686.rpm. Možnost -e (brisanje) se uporablja za odstranjevanje paketa.
rpm -evv nx
11. Kako odstraniti paket RPM brez odvisnosti
Možnost –nodeps (Ne preverjaj odvisnosti) na silo odstrani paket rpm iz sistema. Upoštevajte, da odstranitev določenega paketa lahko pokvari druge delujoče programe.
rpm -ev --nodeps vsftpd
12. Kako povprašati po datoteki, ki pripada kateremu paketu RPM
Recimo, da imate seznam datotek in bi radi ugotovili, kateri paket pripada tem datotekam. Na primer, naslednja možnost ukaza z -qf (datoteka poizvedbe) vam bo pokazala, da je datoteka/usr/bin/htpasswd last paket 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. Kako povprašati po informacijah o nameščenem paketu RPM
Recimo, da ste namestili paket rpm in želite vedeti informacije o paketu. Naslednja možnost -qi (informacije o poizvedbi) bo natisnila razpoložljive informacije nameščenega paketa.
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. Pred namestitvijo pridobite informacije o paketu RPM
Paket ste prenesli z interneta in želite pred namestitvijo vedeti informacije o paketu. Na primer, naslednja možnost -qip (paket informacij o poizvedbi) bo natisnila podatke o paketu 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. Kako povprašati po dokumentaciji nameščenega paketa RPM
Če želite dobiti seznam razpoložljive dokumentacije nameščenega paketa, uporabite naslednji ukaz z možnostjo -qdf (datoteka poizvedbe dokumenta) bo prikazala strani z navodili, povezane s paketom 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. Kako preveriti paket RPM
Preverjanje paketa primerja informacije o nameščenih datotekah paketa z bazo podatkov rpm. -Vp (preveri paket) se uporablja za preverjanje paketa.
rpm -Vp sqlbuddy-1.3.3-1.noarch.rpm S.5....T. c /etc/httpd/conf.d/sqlbuddy.conf
17. Kako preveriti vse pakete RPM
Vnesite naslednji ukaz, da preverite vse nameščene pakete rpm.
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. Kako uvoziti RPM GPG ključ
Če želite preveriti pakete RHEL/CentOS/Fedora, morate uvoziti ključ GPG. Če želite to narediti, izvedite naslednji ukaz. Uvozil bo ključ CentOS 6 GPG.
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
19. Kako seznam vseh uvoženih RPM GPG ključev
Če želite v sistem natisniti vse uvožene ključe GPG, uporabite naslednji ukaz.
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. Kako obnoviti poškodovano bazo podatkov RPM
Včasih se baza podatkov rpm poškoduje in ustavi vse funkcije rpm in drugih aplikacij v sistemu. Torej, takrat moramo obnoviti bazo podatkov rpm in jo obnoviti s pomočjo naslednjega ukaza.
cd /var/lib rm __db* rpm --rebuilddb rpmdb_verify Packages