20 praktilist näidet RPM-i käskudest Linuxis


RPM (Red Hat Package Manager) on vaikimisi avatud lähtekoodiga ja populaarseim pakettide haldamise utiliit Red Hati põhistel süsteemidel nagu (RHEL, CentOS ja Fedora). See tööriist võimaldab süsteemiadministraatoritel ja kasutajatel installida, värskendada, desinstallida, päringuid teha, kontrollida ja hallata süsteemitarkvarapakette Unixi/Linuxi operatsioonisüsteemides. RPM, varem tuntud kui .rpm-fail, mis sisaldab pakettide jaoks vajalikke kompileeritud tarkvaraprogramme ja teeke. See utiliit töötab ainult pakettidega, mis on ehitatud .rpm-vormingule.

See artikkel sisaldab kasulikke näiteid 20 RPM kohta, mis võivad teile abiks olla. Selle käsu rpm abil saate oma Linuxi süsteemides installida, värskendada ja eemaldada pakette.

Mõned faktid RPM-i kohta (RedHat Package Manager)

  1. RPM on tasuta ja see antakse välja GPL-i (General Public License) alusel.
  2. RPM hoiab kõigi installitud pakettide teavet andmebaasis/var/lib/rpm.
  3. RPM on ainus viis pakettide installimiseks Linuxi süsteemidesse. Kui olete installinud pakette lähtekoodi abil, siis rpm seda ei halda.
  4. RPM tegeleb failidega .rpm, mis sisaldab tegelikku teavet pakettide kohta, näiteks: mis see on, kust see pärineb, sõltuvuste teave, versiooniteave jne.

RPM käsul on viis põhirežiimi

  1. Install: seda kasutatakse mis tahes RPM-i paketi installimiseks.
  2. Eemalda: seda kasutatakse mis tahes RPM-i paketi kustutamiseks, eemaldamiseks või desinstallimiseks.
  3. Uuenda: seda kasutatakse olemasoleva RPM-i paketi värskendamiseks.
  4. Kontrolli: seda kasutatakse RPM-i pakettide kinnitamiseks.
  5. Päring: seda kasutatakse mis tahes RPM-i paketi päringuteks.

Kust leida RPM-pakette

Allpool on loetelu p/min saitidest, kust leiate ja saate alla laadida kõik RPM-i paketid.

  1. http://rpmfind.net
  2. http://www.redhat.com
  3. http://freshrpms.net/
  4. http://rpm.pbone.net/

Loe ka:

  1. 20 YUM-i käskenäidet Linuxis
  2. 10 Wgeti käskude näidet Linuxis
  3. 30 kõige kasulikumat Linuxi käsku süsteemiadministraatoritele

Pidage meeles, et peate Linuxi pakettide installimisel olema juurkasutaja. Juurõigustega saate rpm-käske hallata nende vastavate suvanditega.

1. Kuidas kontrollida RPM-i allkirjapaketti

Enne nende Linuxi süsteemidesse installimist kontrollige alati pakettide PGP-signatuuri ja veenduge, et nende terviklikkus ja päritolu on korras. Pidgin-nimelise paketi allkirja kontrollimiseks kasutage järgmist käsku –checksig (kontrollige signatuuri).

 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. RPM-paketi installimine

Tarkvarapaketi rpm installimiseks kasutage järgmist käsku -i-ga. Näiteks rpm-paketi pidgin-2.7.9-5.el6.2.i686.rpm installimiseks.

 rpm -ivh pidgin-2.7.9-5.el6.2.i686.rpm

Preparing...                ########################################### [100%]
   1:pidgin                 ########################################### [100%]

  1. -i: installige pakett
  2. -v: ilusama kuva jaoks paljusõnaline
  3. -h: printige räsimärgid, kui pakettarhiiv lahti pakitakse.

3. Kuidas kontrollida RPM-paketi sõltuvusi enne installimist

Oletame, et soovite enne paketi installimist või täiendamist teha sõltuvuskontrolli. Näiteks kasutage järgmist käsku paketi BitTorrent-5.2.2-1-Python2.4.noarch.rpm sõltuvuste kontrollimiseks. See kuvab paketi sõltuvuste loendi.

 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

  1. -q: küsige paketti
  2. -p: loetlege selle paketi võimalused.
  3. -R: loetlege võimalused, millest see pakett sõltub.

4. Kuidas installida sõltumatuteta RPM-pakett

Kui teate, et kõik vajalikud paketid on juba installitud ja RPM on lihtsalt rumal, võite enne paketi installimist neid sõltuvusi ignoreerida, kasutades valikut –nodeps (sõltuvuste kontroll puudub).

 rpm -ivh --nodeps BitTorrent-5.2.2-1-Python2.4.noarch.rpm

Preparing...                ########################################### [100%]
   1:BitTorrent             ########################################### [100%]

Ülaltoodud käsk installib rpm paketi jõuliselt, ignoreerides sõltuvusvigu, kuid kui need sõltuvusfailid puuduvad, ei tööta programm enne nende installimist üldse.

5. Kuidas kontrollida installitud RPM-paketti

Kasutades paketi nimega parameetrit -q, kuvatakse, kas rpm on installitud või mitte.

 rpm -q BitTorrent

BitTorrent-5.2.2-1.noarch

6. Kuidas loetleda kõik installitud RPM-paketi failid

Installitud rpm pakettide kõigi failide vaatamiseks kasutage käsku -ql (päringute loend) koos rpm-ga.

 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. Kuidas loetleda hiljuti installitud RPM-pakette

Kasutage järgmist käsku rpm koos valikuga -qa (päring kõik), loetletakse kõik hiljuti installitud rpm paketid.

 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. Kuidas loetleda kõik installitud RPM-paketid

Tippige järgmine käsk kõigi Linuxi süsteemi installitud pakettide nimede printimiseks.

 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. Kuidas uuendada RPM-paketti

Kui soovime uuendada mis tahes RPM-i paketti, kasutatakse valikut „–U” (uuendamine). Selle valiku kasutamise üks peamisi eeliseid on see, et see ei uuenda mitte ainult mis tahes paketi uusimat versiooni, vaid säilitab ka vanema paketi varukoopia, nii et kui uuem uuendatud pakett ei käivita varem installitud paketti saab uuesti kasutada.

 rpm -Uvh nx-3.5.0-2.el6.centos.i686.rpm
Preparing...                ########################################### [100%]
   1:nx                     ########################################### [100%]

10. Kuidas eemaldada RPM-pakett

Näiteks RPM-paketi desinstallimiseks kasutame paketi nime nx, mitte paketi algset nime nx-3.5.0-2.el6.centos.i686.rpm. Paketi eemaldamiseks kasutatakse valikut -e (kustuta).

 rpm -evv nx

11. Kuidas eemaldada sõltumatuid RPM-pakette

Valik –nodeps (Ära kontrolli sõltuvusi) eemaldab paketi rpm jõuliselt süsteemist. Kuid pidage meeles, et konkreetse paketi eemaldamine võib rikkuda teisi töötavaid rakendusi.

 rpm -ev --nodeps vsftpd

12. Kuidas küsida faili, mis kuulub millisesse RPM-i paketti

Oletame, et teil on failide loend ja soovite teada saada, milline pakett nendesse failidesse kuulub. Näiteks näitab järgmine käsk valikuga -qf (päringufail) faili/usr/bin/htpasswd paketi httpd-tools-2.2.15-15.el6.centos.1.i686 oma.

 rpm -qf /usr/bin/htpasswd

httpd-tools-2.2.15-15.el6.centos.1.i686

13. Kuidas küsida teavet installitud RPM-paketi kohta

Oletame, et olete installinud rpm-paketi ja soovite saada teavet paketi kohta. Järgmine -qi (päringu teave) suvand prindib installitud paketi olemasoleva teabe.

 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. Enne RPM-i installimist hankige teave RPM-paketi kohta

Olete Internetist paketi alla laadinud ja soovite enne installimist paketi teavet teada saada. Näiteks prindib järgmine suvand -qip (päringu infopakett) paketi sqlbuddy teabe.

 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. Kuidas küsida installitud RPM-paketi dokumentatsiooni

Installitud paketi saadaolevate dokumentide loendi saamiseks kasutage järgmist käsku suvandiga -qdf (päringu dokumendifail) kuvatakse vmstat-paketiga seotud käsilehed.

 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. Kuidas kontrollida RPM-paketti

Paketi kontrollimisel võrreldakse paketi installitud failide teavet rpm andmebaasiga. Paketi kontrollimiseks kasutatakse -Vp (paketi kontrollimine).

 rpm -Vp sqlbuddy-1.3.3-1.noarch.rpm

S.5....T.  c /etc/httpd/conf.d/sqlbuddy.conf

17. Kuidas kontrollida kõiki RPM-i pakette

Kõigi installitud rpm pakettide kontrollimiseks tippige järgmine käsk.

 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. Kuidas importida RPM-i GPG-võti

RHEL/CentOS/Fedora pakettide kontrollimiseks peate importima GPG võtme. Selleks käivitage järgmine käsk. See impordib CentOS 6 GPG võtme.

 rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

19. Kuidas loetleda kõik imporditud RPM GPG-võtmed

Kõigi süsteemis olevate imporditud GPG-võtmete printimiseks kasutage järgmist käsku.

 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. Kuidas rikutud RPM-i andmebaasi taastada

Mõnikord rpm andmebaas rikutakse ja peatatakse kogu rpm ja muude süsteemi rakenduste funktsionaalsus. Niisiis peame hetkel rpm andmebaasi uuesti üles ehitama ja selle järgmise käsu abil taastama.

 cd /var/lib
 rm __db*
 rpm --rebuilddb
 rpmdb_verify Packages