===== RPM (Red Hat Package Manager) ===== RPM ist das Low-Level-Paketverwaltungstool für Red Hat-basierte Distributionen (RHEL, CentOS, Fedora, openSUSE). ==== Grundlagen ==== * Arbeitet direkt mit .rpm-Paketen * Führt keine automatische Abhängigkeitsauflösung durch * Paketdatenbank in `/var/lib/rpm/` * Wird von höheren Tools wie DNF, YUM und Zypper genutzt ==== Wichtige Befehle ==== # Installation und Entfernung sudo rpm -i .rpm # Paket installieren (install) sudo rpm -U .rpm # Paket aktualisieren oder installieren (upgrade) sudo rpm -F .rpm # Nur aktualisieren wenn bereits installiert (freshen) sudo rpm -e # Paket entfernen (erase) # Abkürzungen kombinierbar sudo rpm -ivh .rpm # Install mit verbose und hash-Fortschrittsanzeige sudo rpm -Uvh .rpm # Upgrade mit Ausgabe # Installation ohne Abhängigkeitsprüfung (Vorsicht!) sudo rpm -i --nodeps .rpm sudo rpm -e --nodeps ==== Paketinformationen abfragen ==== # Installierte Pakete rpm -qa # Alle installierten Pakete auflisten (query all) rpm -qa | grep # Nach installiertem Paket suchen rpm -q # Prüfen ob Paket installiert ist rpm -qi # Detaillierte Paketinformationen (query info) rpm -ql # Dateien eines installierten Pakets auflisten (query list) rpm -qc # Konfigurationsdateien auflisten (query config) rpm -qd # Dokumentationsdateien auflisten (query documentation) rpm -q --changelog # Changelog anzeigen # Paketdateien (.rpm) abfragen rpm -qpi .rpm # Info aus RPM-Datei (p = package file) rpm -qpl .rpm # Dateien in RPM-Datei auflisten rpm -qp --requires .rpm # Abhängigkeiten einer RPM-Datei anzeigen # Dateien und Pakete rpm -qf # Welches Paket enthält diese Datei (query file) rpm -q --whatprovides # Welches Paket stellt diese Datei bereit rpm -q --whatrequires # Welche Pakete benötigen dieses Paket ==== Abhängigkeiten prüfen ==== rpm -qR # Abhängigkeiten eines installierten Pakets (requires) rpm -q --requires # Alternative Syntax rpm -qp --requires .rpm # Abhängigkeiten einer RPM-Datei # Was bietet ein Paket rpm -q --provides # Was stellt das Paket bereit ==== Verifizierung und Prüfung ==== rpm -V # Paket verifizieren (verify) rpm -Va # Alle Pakete verifizieren rpm -Vp .rpm # RPM-Datei verifizieren # Signatur prüfen rpm --checksig .rpm # Signatur und Checksumme prüfen rpm -K .rpm # Kurzform # GPG-Schlüssel importieren sudo rpm --import sudo rpm --import https://example.com/RPM-GPG-KEY rpm -qa gpg-pubkey* # Importierte Schlüssel anzeigen ==== Paketdatenbank ==== # Datenbank neu aufbauen (bei Problemen) sudo rpm --rebuilddb # Datenbank-Verzeichnis ls -l /var/lib/rpm/ ==== RPM-Pakete erstellen ==== # SPEC-Datei erstellen und Paket bauen rpmbuild -ba .spec # Binary und Source RPM bauen rpmbuild -bb .spec # Nur Binary RPM bauen rpmbuild -bs .spec # Nur Source RPM bauen # RPM aus Quellen extrahieren rpm2cpio .rpm | cpio -idmv ==== Weitere Informationen ==== man rpm man rpm2cpio man rpmbuild rpm --help ==== Siehe auch ==== * [[sammlung:dnf|DNF]] (High-Level Paketmanager für Fedora/RHEL) * [[sammlung:yum|YUM]] (Vorgänger von DNF) * [[sammlung:zypper|Zypper]] (für openSUSE) * [[sammlung:dpkg|dpkg]] (Debian-Äquivalent) * [[sammlung:paketverwaltung|Paketverwaltung Übersicht]] {{tag>cli}}