Website-Suche

20 praktische Beispiele für RPM-Befehle unter Linux


RPM (Red Hat Package Manager) ist ein Standard-Open-Source- und beliebtestes Paketverwaltungsprogramm für Red Hat-basierte Systeme wie (RHEL , CentOS und Fedora). Mit dem Tool können Systemadministratoren und Benutzer installieren, aktualisieren, deinstallieren, abfragen und verifizieren. und verwaltet Systemsoftwarepakete in Unix/Linux-Betriebssystemen. Die RPM-Datei, früher bekannt als .rpm-Datei, die kompilierte Softwareprogramme und Bibliotheken enthält, die von den Paketen benötigt werden. Dieses Dienstprogramm funktioniert nur mit Paketen, die auf dem .rpm-Format basieren.

Dieser Artikel enthält einige nützliche 20 RPM-Befehlsbeispiele, die für Sie hilfreich sein könnten. Mit Hilfe dieses rpm-Befehls können Sie Pakete in Ihren Linux-Systemen installieren, aktualisieren und entfernen.

Einige Fakten über RPM (RedHat Package Manager)

  1. RPM ist kostenlos und steht unter der GPL (General Public License).
  2. RPM speichert die Informationen aller installierten Pakete in der Datenbank /var/lib/rpm.
  3. RPM ist die einzige Möglichkeit, Pakete unter Linux-Systemen zu installieren. Wenn Sie Pakete mithilfe des Quellcodes installiert haben, kann RPM dies nicht verwalten.
  4. RPM verarbeitet .rpm-Dateien, die die eigentlichen Informationen über die Pakete enthalten, wie zum Beispiel: was es ist, woher es kommt, >Abhängigkeitsinformationen, Versionsinformationen usw.

Es gibt fünf Grundmodi für den RPM-Befehl

  1. Installieren: Wird zum Installieren eines beliebigen RPM-Pakets verwendet.
  2. Entfernen: Wird verwendet, um RPM-Pakete zu löschen, zu entfernen oder zu deinstallieren.
  3. Upgrade: Wird verwendet, um das vorhandene RPM-Paket zu aktualisieren.
  4. Verifizieren: Wird zur Überprüfung eines RPM-Pakets verwendet.
  5. Abfrage: Wird zur Abfrage jedes RPM-Pakets verwendet.

Wo finde ich RPM-Pakete?

Nachfolgend finden Sie eine Liste der RPM-Sites, auf denen Sie alle RPM-Pakete finden und herunterladen können.

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

Lesen Sie auch:

  1. 20 YUM-Befehlsbeispiele unter Linux
  2. 10 Wget-Befehlsbeispiele unter Linux
  3. 30 nützlichste Linux-Befehle für Systemadministratoren

Bitte denken Sie daran, dass Sie bei der Installation von Paketen unter Linux Root-Benutzer sein müssen. Mit den Root-Rechten können Sie RPM-Befehle mit den entsprechenden Optionen verwalten.

1. So überprüfen Sie ein RPM-Signaturpaket

Überprüfen Sie immer die PGP-Signatur von Paketen, bevor Sie sie auf Ihren Linux-Systemen installieren, und stellen Sie sicher, dass ihre Integrität und Herkunft OK sind. Verwenden Sie den folgenden Befehl mit der Option –checksig (Signatur prüfen), um die Signatur eines Pakets namens pidgin zu überprüfen.

[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. So installieren Sie ein RPM-Paket

Um ein RPM-Softwarepaket zu installieren, verwenden Sie den folgenden Befehl mit der Option -i. Zum Beispiel, um ein RPM-Paket mit dem Namen pidgin-2.7.9-5.el6.2.i686.rpm zu installieren.

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

Preparing...                ########################################### [100%]
   1:pidgin                 ########################################### [100%]
RPM-Befehl und -Optionen
  1. -i: Paket installieren
  2. -v: Ausführlich für eine schönere Anzeige
  3. -h: Hash-Markierungen ausgeben, während das Paketarchiv entpackt wird.

3. So überprüfen Sie die Abhängigkeiten des RPM-Pakets vor der Installation

Nehmen wir an, Sie möchten eine Abhängigkeitsprüfung durchführen, bevor Sie ein Paket installieren oder aktualisieren. Verwenden Sie beispielsweise den folgenden Befehl, um die Abhängigkeiten des Pakets BitTorrent-5.2.2-1-Python2.4.noarch.rpm zu überprüfen. Es wird die Liste der Abhängigkeiten des Pakets angezeigt.

[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-Befehl und -Optionen
  1. -q: Ein Paket abfragen
  2. -p: Listen Sie die Funktionen auf, die dieses Paket bietet.
  3. -R: Funktionen auflisten, von denen dieses Paket abhängt.

4. So installieren Sie ein RPM-Paket ohne Abhängigkeiten

Wenn Sie wissen, dass alle benötigten Pakete bereits installiert sind und RPM einfach nur dumm ist, können Sie diese Abhängigkeiten ignorieren, indem Sie vor der Installation die Option –nodeps (keine Abhängigkeitsprüfung) verwenden Paket.

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

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

Der obige Befehl erzwingt die Installation des RPM-Pakets durch Ignorieren von Abhängigkeitsfehlern. Wenn diese Abhängigkeitsdateien jedoch fehlen, funktioniert das Programm überhaupt nicht, bis Sie sie installieren.

5. So überprüfen Sie ein installiertes RPM-Paket

Wenn Sie die Option -q mit dem Paketnamen verwenden, wird angezeigt, ob ein RPM installiert ist oder nicht.

[root@tecmint]# rpm -q BitTorrent

BitTorrent-5.2.2-1.noarch

6. So listen Sie alle Dateien eines installierten RPM-Pakets auf

Um alle Dateien eines installierten RPM-Pakets anzuzeigen, verwenden Sie den Befehl -ql (Abfrageliste) mit RPM.

[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. So listen Sie kürzlich installierte RPM-Pakete auf

Verwenden Sie den folgenden RPM-Befehl mit der Option -qa (query all), um alle kürzlich installierten RPM-Pakete aufzulisten.

[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. So listen Sie alle installierten RPM-Pakete auf

Geben Sie den folgenden Befehl ein, um alle Namen aller auf Ihrem Linux-System installierten Pakete auszugeben.

[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. So aktualisieren Sie ein RPM-Paket

Wenn wir ein RPM-Paket aktualisieren möchten, wird die Option „–U“ (upgrade) verwendet. Einer der Hauptvorteile dieser Option besteht darin, dass nicht nur die neueste Version eines Pakets aktualisiert wird, sondern auch die Sicherung des älteren Pakets beibehalten wird, sodass für den Fall, dass das neuere aktualisierte Paket das zuvor installierte Paket nicht ausführt, nicht ausgeführt wird kann wieder verwendet werden.

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

10. So entfernen Sie ein RPM-Paket

Um beispielsweise ein RPM-Paket zu deinstallieren, verwenden wir den Paketnamen nx, nicht den ursprünglichen Paketnamen nx-3.5.0-2.el6.centos.i686.rpm . Die Option -e (erase) wird zum Entfernen des Pakets verwendet.

[root@tecmint]# rpm -evv nx

11. So entfernen Sie ein RPM-Paket ohne Abhängigkeiten

Die Option –nodeps (Abhängigkeiten nicht prüfen) entfernt das RPM-Paket zwangsweise aus dem System. Beachten Sie jedoch, dass das Entfernen eines bestimmten Pakets dazu führen kann, dass andere funktionierende Anwendungen beschädigt werden.

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

12. So fragen Sie eine Datei ab, die zu welchem RPM-Paket gehört

Nehmen wir an, Sie haben eine Liste mit Dateien und möchten herausfinden, zu welchem Paket diese Dateien gehören. Der folgende Befehl mit der Option -qf (Abfragedatei) zeigt Ihnen beispielsweise, dass die Datei /usr/bin/htpasswd dem Paket gehört 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. So fragen Sie Informationen zum installierten RPM-Paket ab

Nehmen wir an, Sie haben ein RPM-Paket installiert und möchten die Informationen über das Paket wissen. Die folgende Option -qi (Abfrageinformationen) gibt die verfügbaren Informationen des installierten Pakets aus.

[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. Informieren Sie sich vor der Installation über das RPM-Paket

Sie haben ein Paket aus dem Internet heruntergeladen und möchten vor der Installation die Informationen zu einem Paket wissen. Beispielsweise gibt die folgende Option -qip (Query Info Package) die Informationen eines Pakets sqlbuddy aus.

[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. So fragen Sie die Dokumentation des installierten RPM-Pakets ab

Um die Liste der verfügbaren Dokumentation eines installierten Pakets abzurufen, verwenden Sie den folgenden Befehl mit der Option -qdf (Dokumentdatei abfragen). Dadurch werden die Handbuchseiten zum vmstat-Paket angezeigt.

[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. So überprüfen Sie ein RPM-Paket

Bei der Überprüfung eines Pakets werden die Informationen der installierten Dateien des Pakets mit der RPM-Datenbank verglichen. Das -Vp (Paket verifizieren) wird zum Verifizieren eines Pakets verwendet.

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

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

17. So überprüfen Sie alle RPM-Pakete

Geben Sie den folgenden Befehl ein, um alle installierten RPM-Pakete zu überprüfen.

[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. So importieren Sie einen RPM-GPG-Schlüssel

Um RHEL/CentOS/Fedora-Pakete zu überprüfen, müssen Sie den GPG-Schlüssel importieren. Führen Sie dazu den folgenden Befehl aus. Es wird der CentOS 6-GPG-Schlüssel importiert.

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

19. So listen Sie alle importierten RPM-GPG-Schlüssel auf

Um alle importierten GPG-Schlüssel in Ihrem System zu drucken, verwenden Sie den folgenden Befehl.

[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. So erstellen Sie eine beschädigte RPM-Datenbank neu

Manchmal wird die RPM-Datenbank beschädigt und stoppt die gesamte Funktionalität von RPM und anderen Anwendungen auf dem System. Zu diesem Zeitpunkt müssen wir also die RPM-Datenbank neu erstellen und mit Hilfe des folgenden Befehls wiederherstellen.

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