Weboldal keresés

20 gyakorlati példa az RPM-parancsokra Linuxban


Az RPM (Red Hat Package Manager) egy alapértelmezett nyílt forráskódú és legnépszerűbb csomagkezelő segédprogram a Red Hat alapú rendszerekben, például (RHEL) , CentOS és Fedora). Az eszköz lehetővé teszi a rendszergazdák és a felhasználók számára telepítést, frissítést, eltávolítást, lekérdezést, ellenőrzést és kezelheti a rendszerszoftver-csomagokat Unix/Linux operációs rendszerekben. A korábban .rpm néven ismert RPM fájl, amely a csomagokhoz szükséges lefordított szoftverprogramokat és könyvtárakat tartalmazza. Ez a segédprogram csak az .rpm formátumra épülő csomagokkal működik.

Ez a cikk néhány hasznos 20 RPM-példát tartalmaz, amelyek hasznosak lehetnek az Ön számára. Ezen rpm parancsok segítségével csomagokat telepíthet, frissíthet, távolíthat el Linux rendszereiben.

Néhány tény az RPM-ről (RedHat Package Manager)

  1. Az RPM ingyenes, és a GPL (General Public License) hatálya alá tartozik.
  2. Az RPM az összes telepített csomag információit a /var/lib/rpm adatbázisban tartja.
  3. Az RPM az egyetlen módja a csomagok telepítésének Linux rendszereken, ha a csomagokat forráskóddal telepítette, akkor az rpm nem fogja kezelni.
  4. Az RPM az .rpm fájlokkal foglalkozik, amelyek a tényleges információkat tartalmazzák a csomagokról, például: mi ez, honnan származik, >függőségi információk, verzióinformációk stb.

Az RPM parancsnak öt alapvető módja van

  1. Telepítés : Bármely RPM-csomag telepítésére szolgál.
  2. Eltávolítás : Bármely RPM-csomag törlésére, eltávolítására vagy eltávolítására szolgál.
  3. Frissítés : A meglévő RPM-csomag frissítésére szolgál.
  4. Ellenőrzés: RPM-csomagok ellenőrzésére szolgál.
  5. Lekérdezés : Bármely RPM-csomag lekérdezésére szolgál.

Hol találhatók RPM-csomagok

Az alábbiakban az rpm webhelyek listája található, ahol megtalálhatja és letöltheti az összes RPM csomagot.

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

Olvassa el még:

  1. 20 YUM parancspélda Linuxban
  2. 10 Wget parancs példa Linuxban
  3. 30 leghasznosabb Linux-parancs rendszergazdák számára

Kérjük, ne feledje, hogy root felhasználónak kell lennie, amikor csomagokat telepít Linux alatt, a root jogosultságokkal kezelheti az rpm parancsokat a megfelelő opciókkal.

1. Az RPM aláírási csomag ellenőrzése

Mindig ellenőrizze a csomagok PGP-aláírását, mielőtt telepíti őket Linux rendszerére, és győződjön meg arról, hogy a csomagok integritása és eredete OK. Használja a következő parancsot a –checksig (check signature) opcióval a pidgin nevű csomag aláírásának ellenőrzéséhez.

[root@tecmint]# 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-csomag telepítése

Az rpm szoftvercsomag telepítéséhez használja a következő parancsot a -i opcióval. Például a pidgin-2.7.9-5.el6.2.i686.rpm rpm csomag telepítéséhez.

[root@tecmint]# rpm -ivh pidgin-2.7.9-5.el6.2.i686.rpm

Preparing...                ########################################### [100%]
   1:pidgin                 ########################################### [100%]
RPM parancs és opciók
  1. -i : csomag telepítése
  2. -v : bőbeszédű a szebb megjelenítés érdekében
  3. -h: kivonatjelek nyomtatása a csomagarchívum kicsomagolásakor.

3. Hogyan ellenőrizhető az RPM-csomag függősége a telepítés előtt

Tegyük fel, hogy függőségi ellenőrzést szeretne végezni egy csomag telepítése vagy frissítése előtt. Például a következő paranccsal ellenőrizze a BitTorrent-5.2.2-1-Python2.4.noarch.rpm csomag függőségét. Megjeleníti a csomag függőségeinek listáját.

[root@tecmint]# 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
RPM parancs és opciók
  1. -q : Csomag lekérdezése
  2. -p : A csomag által biztosított lehetőségek listája.
  3. -R: felsorolja azokat a képességeket, amelyektől ez a csomag függ.

4. RPM-csomag telepítése függőségek nélkül

Ha tudja, hogy az összes szükséges csomag már telepítve van, és az RPM csak hülyeség, figyelmen kívül hagyhatja ezeket a függőségeket a –nodeps opció használatával (nincs függőségi ellenőrzés) a telepítés előtt. csomag.

[root@tecmint]# rpm -ivh --nodeps BitTorrent-5.2.2-1-Python2.4.noarch.rpm

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

A fenti parancs kényszeresen telepíti az rpm csomagot a függőségi hibák figyelmen kívül hagyásával, de ha ezek a függőségi fájlok hiányoznak, akkor a program egyáltalán nem fog működni, amíg nem telepíti őket.

5. A telepített RPM-csomag ellenőrzése

A csomagnévvel együtt a -q opció használata megmutatja, hogy az rpm telepítve van-e vagy sem.

[root@tecmint]# rpm -q BitTorrent

BitTorrent-5.2.2-1.noarch

6. A telepített RPM-csomag összes fájljának listázása

A telepített rpm csomagok összes fájljának megtekintéséhez használja a -ql (lekérdezési lista) with rpm parancsot.

[root@tecmint]# 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. A legutóbb telepített RPM-csomagok listázása

Használja a következő rpm parancsot a -qa (query all) opcióval, amely felsorolja az összes nemrég telepített rpm csomagot.

[root@tecmint]# 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. Az összes telepített RPM-csomag listázása

Írja be a következő parancsot a Linux rendszeren telepített csomagok összes nevének kinyomtatásához.

[root@tecmint]# 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. Az RPM-csomag frissítése

Ha bármelyik RPM-csomagot frissíteni szeretnénk, a „–U” (frissítés) opciót használjuk. Ennek az opciónak az egyik fő előnye, hogy nem csak a csomagok legújabb verzióját frissíti, hanem a régebbi csomag biztonsági másolatát is fenntartja, így abban az esetben, ha az újabb frissített csomag nem a korábban telepített csomagot futtatja. újra használható.

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

10. Az RPM-csomag eltávolítása

Egy RPM-csomag eltávolításához például az nx csomagnevet használjuk, nem az eredeti nx-3.5.0-2.el6.centos.i686.rpm csomagnevet. >. A -e (erase) opció a csomag eltávolítására szolgál.

[root@tecmint]# rpm -evv nx

11. RPM-csomag eltávolítása függőségek nélkül

A –nodeps (Ne ellenőrizze a függőségeket) opció erőteljesen eltávolítja az rpm csomagot a rendszerből. De ne feledje, hogy egy adott csomag eltávolítása más működő alkalmazásokat is megszakíthat.

[root@tecmint]# rpm -ev --nodeps vsftpd

12. Hogyan lehet lekérdezni egy fájlt, amely melyik RPM-csomaghoz tartozik

Tegyük fel, hogy van fájlok listája, és szeretné megtudni, melyik csomag tartozik ezekhez a fájlokhoz. Például a következő parancs a -qf (query file) opcióval megmutatja, hogy az /usr/bin/htpasswd fájl a csomag tulajdona httpd-tools-2.2.15-15.el6.centos.1.i686.

[root@tecmint]# rpm -qf /usr/bin/htpasswd

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

13. A telepített RPM-csomag információinak lekérdezése

Tegyük fel, hogy telepített egy rpm csomagot, és tudni szeretné a csomaggal kapcsolatos információkat. A következő -qi (lekérdezési információ) opció kinyomtatja a telepített csomag elérhető adatait.

[root@tecmint]# 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. Szerezze meg az RPM-csomag információit a telepítés előtt

Ön letöltött egy csomagot az internetről, és szeretné tudni a csomag információit a telepítés előtt. Például a következő -qip (lekérdezési információs csomag) opció kiírja az sqlbuddy csomag információit.

[root@tecmint]# 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. Hogyan lehet lekérdezni a telepített RPM-csomag dokumentációját

A telepített csomag elérhető dokumentációinak listájának megtekintéséhez használja a következő parancsot a -qdf opcióval (lekérdezési dokumentumfájl), amely megjeleníti a vmstat csomaghoz kapcsolódó kézikönyvoldalakat.

[root@tecmint]# 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. Az RPM-csomag ellenőrzése

A csomag ellenőrzése összehasonlítja a csomag telepített fájljainak adatait az rpm adatbázissal. A -Vp (ellenőrző csomag) a csomag ellenőrzésére szolgál.

[root@tecmint downloads]# rpm -Vp sqlbuddy-1.3.3-1.noarch.rpm

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

17. Az összes RPM-csomag ellenőrzése

Írja be a következő parancsot az összes telepített rpm csomag ellenőrzéséhez.

[root@tecmint]# 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. RPM GPG kulcs importálása

Az RHEL/CentOS/Fedora csomagok ellenőrzéséhez importálnia kell a GPG kulcsot. Ehhez hajtsa végre a következő parancsot. Importálja a CentOS 6 GPG kulcsot.

[root@tecmint]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

19. Az összes importált RPM GPG kulcs listázása

Az összes importált GPG kulcs kinyomtatásához használja a következő parancsot.

[root@tecmint]# 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. Hogyan lehet újraépíteni a sérült RPM-adatbázist

Néha az rpm adatbázis megsérül, és leállítja az rpm és a rendszer egyéb alkalmazásai összes funkcióját. Tehát abban az időben újra kell építenünk az rpm adatbázist, és vissza kell állítani a következő parancs segítségével.

[root@tecmint]# cd /var/lib
[root@tecmint]# rm __db*
[root@tecmint]# rpm --rebuilddb
[root@tecmint]# rpmdb_verify Packages