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)
- Az RPM ingyenes, és a GPL (General Public License) hatálya alá tartozik.
- Az RPM az összes telepített csomag információit a /var/lib/rpm adatbázisban tartja.
- 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.
- 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
- Telepítés : Bármely RPM-csomag telepítésére szolgál.
- 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.
- Frissítés : A meglévő RPM-csomag frissítésére szolgál.
- Ellenőrzés: RPM-csomagok ellenőrzésére szolgál.
- 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.
- http://rpmfind.net
- http://www.redhat.com
- http://freshrpms.net/
- http://rpm.pbone.net/
Olvassa el még:
- 20 YUM parancspélda Linuxban
- 10 Wget parancs példa Linuxban
- 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
- -i : csomag telepítése
- -v : bőbeszédű a szebb megjelenítés érdekében
- -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
- -q : Csomag lekérdezése
- -p : A csomag által biztosított lehetőségek listája.
- -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