20 Praktični primjeri RPM naredbi u Linuxu


RPM (Red Hat Package Manager) zadani je i najpopularniji uslužni program za upravljanje paketima za Red Hat sustave poput (RHEL, CentOS i Fedora). Alat administratorima sustava i korisnicima omogućuje instaliranje, ažuriranje, deinstaliranje, postavljanje upita, provjeru i upravljanje sistemskim softverskim paketima u operativnim sustavima Unix/Linux. RPM koja se prije zvala .rpm datoteka, koja uključuje kompilirane softverske programe i biblioteke potrebne paketima. Ovaj uslužni program radi samo s paketima koji su izgrađeni na .rpm formatu.

Ovaj članak nudi nekoliko korisnih primjera naredbi od 20 okretaja u minuti koji bi vam mogli biti korisni. Uz pomoć ove naredbe rpm možete uspjeti instalirati, ažurirati i ukloniti pakete u vašim Linux sustavima.

Neke činjenice o RPM-u (RedHat Package Manager)

  1. RPM je besplatan i objavljen pod GPL (General Public License).
  2. RPM čuva podatke o svim instaliranim paketima u bazi podataka/var/lib/rpm.
  3. RPM je jedini način za instaliranje paketa pod Linux sustavima, ako ste pakete instalirali pomoću izvornog koda, rpm neće upravljati njime.
  4. RPM se bavi .rpm datotekama koje sadrže stvarne informacije o paketima kao što su: što je to, odakle dolazi, informacije o ovisnostima, informacije o verziji itd.

Postoji pet osnovnih načina za RPM naredbu

  1. Instalacija: Koristi se za instaliranje bilo kojeg RPM paketa.
  2. Ukloni: Koristi se za brisanje, uklanjanje ili deinstaliranje bilo kojeg RPM paketa.
  3. Nadogradnja: Koristi se za ažuriranje postojećeg RPM paketa.
  4. Provjera: Koristi se za provjeru RPM paketa.
  5. Upit: Koristi se za upit bilo kojeg RPM paketa.

Gdje pronaći RPM pakete

Ispod je popis rpm stranica, gdje možete pronaći i preuzeti sve RPM pakete.

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

Pročitajte također:

  1. 20 primjera YUM naredbi u Linuxu
  2. 10 primjera Wget naredbi u Linuxu
  3. 30 najkorisnijih Linux naredbi za administratore sustava

Imajte na umu da prilikom instaliranja paketa u Linux morate biti root korisnik, s root privilegijama možete upravljati rpm naredbama s odgovarajućim opcijama.

1. Kako provjeriti paket potpisa RPM-a

Uvijek provjerite PGP potpis paketa prije instaliranja na vaše Linux sustave i provjerite je li njegov integritet i podrijetlo u redu. Upotrijebite sljedeću naredbu s –checksig (provjera potpisa) za provjeru potpisa paketa nazvanog 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 instalirati RPM paket

Za instaliranje programskog paketa rpm koristite sljedeću naredbu s opcijom -i. Na primjer, za instalaciju rpm paketa pod nazivom 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%]

  1. -i: instalirajte paket
  2. -v: opširno za ljepši prikaz
  3. -h: ispisati hash oznake dok se arhiva paketa raspakira.

3. Kako provjeriti ovisnosti RPM paketa prije instalacije

Recimo da biste željeli provjeriti ovisnost prije instaliranja ili nadogradnje paketa. Na primjer, upotrijebite sljedeću naredbu za provjeru ovisnosti paketa BitTorrent-5.2.2-1-Python2.4.noarch.rpm. Prikazat će popis ovisnosti 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

  1. -q: Upit o paketu
  2. -p: Popis mogućnosti koje nudi ovaj paket.
  3. -R: Popis mogućnosti o kojima ovisi ovaj paket ..

4. Kako instalirati RPM paket bez ovisnosti

Ako znate da su svi potrebni paketi već instalirani, a RPM samo glup, možete zanemariti te ovisnosti pomoću opcije –nodeps (nema provjere ovisnosti) prije instaliranja paketa.

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

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

Gornja naredba prisilno instalira rpm paket ignoriranjem pogrešaka ovisnosti, ali ako te datoteke ovisnosti nedostaju, program uopće neće raditi dok ih ne instalirate.

5. Kako provjeriti instalirani RPM paket

Korištenje opcije -q s nazivom paketa, pokazat će je li instaliran broj okretaja u minuti ili nije.

 rpm -q BitTorrent

BitTorrent-5.2.2-1.noarch

6. Kako navesti sve datoteke instaliranog RPM paketa

Da biste pregledali sve datoteke instaliranih rpm paketa, upotrijebite -ql (popis upita) s naredbom 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 navesti nedavno instalirane RPM pakete

Upotrijebite sljedeću rpm naredbu s opcijom -qa (upit za sve), popisat će sve nedavno instalirane rpm pakete.

 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 navesti sve instalirane RPM pakete

Upišite sljedeću naredbu da biste ispisali sva imena instaliranih paketa na vašem Linux sustavu.

 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 nadograditi RPM paket

Ako želimo nadograditi bilo koji RPM paket, koristit će se opcija – –U (nadogradnja). Jedna od glavnih prednosti korištenja ove opcije je da neće nadograditi samo najnoviju verziju bilo kojeg paketa, već će i održavati sigurnosnu kopiju starijeg paketa, tako da u slučaju da noviji nadograđeni paket ne pokreće prethodno instalirani paket može se ponovno koristiti.

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

10. Kako ukloniti RPM paket

Da bismo deinstalirali RPM paket, na primjer koristimo naziv paketa nx, a ne izvorno ime paketa nx-3.5.0-2.el6.centos.i686.rpm. Opcija -e (brisanje) koristi se za uklanjanje paketa.

 rpm -evv nx

11. Kako ukloniti RPM paket bez ovisnosti

Opcija –nodeps (Ne provjeravajte ovisnosti) prisilno uklanja paket rpm iz sustava. Ali imajte na umu da uklanjanje određenog paketa može pokvariti druge radne programe.

 rpm -ev --nodeps vsftpd

12. Kako tražiti datoteku koja pripada kojem RPM paketu

Recimo, imate popis datoteka i željeli biste saznati koji paket pripada tim datotekama. Na primjer, sljedeća opcija naredbe s -qf (datoteka upita) prikazat će vam datoteku/usr/bin/htpasswd je u vlasništvu paketa 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 potražiti informacije o instaliranom RPM paketu

Recimo da ste instalirali rpm paket i želite znati podatke o paketu. Sljedeća opcija -qi (informacije o upitu) ispisat će dostupne informacije instaliranog 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. Doznajte informacije o RPM paketu prije instalacije

Preuzeli ste paket s interneta i želite znati podatke o paketu prije instalacije. Na primjer, sljedeća opcija -qip (paket informacija o upitu) ispisat će informacije 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 zatražiti dokumentaciju instaliranog RPM paketa

Da biste dobili popis dostupne dokumentacije instaliranog paketa, upotrijebite sljedeću naredbu s opcijom -qdf (datoteka dokumenta dokumenta) prikazat će stranice s priručnikom 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 provjeriti RPM paket

Provjerom paketa uspoređuju se informacije o instaliranim datotekama paketa s rpm bazom podataka. -Vp (provjera paketa) koristi se za provjeru paketa.

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

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

17. Kako provjeriti sve RPM pakete

Upišite sljedeću naredbu da biste provjerili sve instalirane 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 uvesti RPM GPG ključ

Da biste provjerili RHEL/CentOS/Fedora pakete, morate uvesti GPG ključ. Da biste to učinili, izvršite sljedeću naredbu. Uvest će CentOS 6 GPG ključ.

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

19. Kako navesti sve uvezene RPM GPG ključeve

Da biste ispisali sve uvezene GPG ključeve u vašem sustavu, upotrijebite sljedeću naredbu.

 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 oštećenu RPM bazu podataka

Ponekad se rpm baza podataka ošteti i zaustavi sve funkcije rpm-a i drugih aplikacija na sustavu. Dakle, u to vrijeme moramo obnoviti rpm bazu podataka i vratiti je uz pomoć sljedeće naredbe.

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