RPM(8) System Manager's Manual RPM(8) BEZEICHNUNG rpm - RPM-Paketverwaltung UBERSICHT Pakete abfragen und uberprufen rpm {-q|--query} [Auswahloptionen] [Abfrageoptionen] [PAKETDATEI ] [PAKETNAME ] rpm {-V|--verify} [Auswahloptionen] [Uberprufungsoptionen] [PAKETNAME ] Pakete installieren, aktualisieren und entfernen rpm {-i|--install} [Transaktionsoptionen] [Installationsoptionen] PAKETDATEI rpm {-U|--upgrade} [Transaktionsoptionen] [Installationsoptionen] PAKETDATEI rpm {-F|--freshen} [Transaktionsoptionen] [Installationsoptionen] PAKETDATEI rpm --reinstall [Transaktionsoptionen] [Installationsoptionen] PAKETDATEI rpm --restore [Transaktionsoptionen] [Auswahloptionen] PAKETNAME rpm {-e|--erase} [Transaktionsoptionen] [Loschoptionen] PAKETNAME Verschiedene Aktionen rpm --querytags Siehe rpm-common(8) zu Aktionen, die allen rpm-Programmen gemeinsam sind. BESCHREIBUNG rpm ist eine leistungsfahige Paketverwaltung, die zum Erstellen, Installieren, Abfragen, Uberprufen, Aktualisieren und Loschen individueller Softwarepakete verwendet werden kann. Ein Paket besteht aus einem Dateiarchiv und Metadaten, die zum Installieren und Loschen der im Paket enthaltenen Dateien verwendet werden. Die Metadaten umfassen Hilfsskripte, Dateiattribute und beschreibende Informationen zum Paket. Pakete gibt es in zwei Varianten: Binarpakete, welche die zu installierende Software enthalten, und Quellpakete, die den Quellcode zusammen mit Anweisungen enthalten, die zum Erstellen von Binarpaketen erforderlich sind. AKTIONEN Pakete abfragen und uberprufen -V, --verify Bei der Uberprufung von Paketen werden Informationen zu den vom Paket installierten Dateien mit den Informationen zu den Dateien, die aus den aus der rpm-Datenbank Paket-Metadaten bezogen werden, verglichen. Unter anderem werden Grosse, Prufsumme, Zugriffsrechte, Typ, Eigentumer und Gruppe jeder Datei verglichen. Alle Unstimmigkeiten werden angezeigt. -q, --query fragt Paketdateien oder installierte Pakete ab. Pakete installieren, aktualisieren und entfernen -i, --install installiert neue Paket(e), ohne Upgrade-Szenarien zu betrachten. Dies ist ein besonderer Einsatzfall, normalerweise sollten Installationen mittels --upgrade erfolgen. -U, --upgrade installiert oder aktualisiert Paket(e) auf eine neuere Version. Altere oder veraltete Paket(e) werden entfernt, nachdem das neue Paket installiert wurde. -F, --freshen aktualisiert Paket(e), aber nur jene, fur die eine altere Version installiert ist. --reinstall installiert bereits installierte Paket(e) erneut. --restore stellt die Metadaten wie Zeitstempel, Besitzer, Gruppe, Befugnisse und Capabilitys von Dateien in dem angegebenen Paket wieder her. -e, --erase loscht installierte Pakete. Verschiedene Aktionen --querytags gibt bekannte Abfragemarkierungen aus. Nutzlich mit der Option --queryformat. Veraltete Kompatibilitats-Aliase Dies sind veraltete popt(3)-Aliase, die nur aus Grunden der Abwartskompatibilitat vorhanden sind. Ihre Verwendung wird nicht empfohlen. --initdb, --rebuilddb, --verifydb Siehe rpmdb(8). --addsign, --delsign, --resign Siehe rpmsign(1). -K, --checksig, --import Siehe rpmkeys(8). --specfile Siehe rpmspec(1). Siehe rpm-common(8) zu den Aktionen, die allen rpm-Programmen gemeinsam sind. ARGUMENTE PAKETDATEI Entweder ein rpm-Paket oder eine Manifestdatei (siehe rpm-manifest(5)). Kann als ftp- oder http-URL angegeben werden, wobei das Paket vor der Installation heruntergeladen wird. Siehe FTP/HTTP-OPTIONEN fur Informationen dazu, welche ftp- und http-Client-Optionen rpm unterstutzt. PAKETNAME Installiertes Paket mit dem angegebenen PAKETNAMEN. Um ein Paket genauer anzugeben, darf auf den Paketnamen die Version oder die Version und Veroffentlichung (beide durch einen Bindestrich getrennt) oder ein Architekturname (durch einen Punkt getrennt) folgen. Siehe die Ausgabe von rpm -qa oder rpm -qp PAKETDATEI als Beispiel. OPTIONEN Siehe rpm-common(8) fur die Optionen, die allen Aktionen gemeinsam sind. INSTALLATIONS- UND AKTUALISIERUNGSOPTIONEN --allfiles installiert oder aktualisiert alle missingok-Dateien im Paket, ganz gleich, ob sie existieren oder nicht. --badreloc wird zusammen mit --relocate verwendet und erlaubt Verschiebungen aller Dateipfade, nicht nur jener, die als ALTER_PFAD in den Festlegungen zu Verschiebungen im Binarpaket enthalten sind. --excludepath ALTER_PFAD installiert keine Dateien, deren Namen mit ALTER_PFAD beginnen. --excludeartifacts installiert keine Dateien, die als Artefakte markiert sind, wie zum Beispiel >>build-id<<-Links. --excludeconfigs, --noconfigs Konfigurationsdateien nicht installieren. --excludedocs installiert keine Dateien, die als Dokumentation markiert sind (was Handbuchseiten und Texinfo-Dokumente einschliesst). --force ist gleichbedeutend mit --replacepkgs, --replacefiles und --oldpackage. --ignoresize uberpruft vor der Installation des Pakets auf den eingehangten Dateisystemen nicht, ob genugend Speicherplatz vorhanden ist. --ignorearch erlaubt die Installation oder Aktualisierung selbst dann, wenn die Architekturen des Binarpakets und des Rechners nicht ubereinstimmen. --ignoreos erlaubt die Installation oder Aktualisierung selbst dann, wenn die Betriebssysteme des Binarpakets und des Rechners nicht ubereinstimmen. --includedocs installiert Dokumentationsdateien. Dies ist das Standardverhalten. --nocontexts setzt den SELinux-Kontext fur Dateien und Scriptlets nicht. Nur wirksam, falls rpm-plugin-selinux(8) installiert und aktiviert ist. --nocaps setzt keine Datei-Capabilitys. --noverify fuhrt vor der Installation keine Paketuberprufung aus. --nosysusers erzeugt keine >>sysusers<< von Paketen. --oldpackage ermoglicht eine Aktualisierung, bei der ein neueres Paket durch ein alteres ersetzt wird. --prefix NEUER_PFAD ubersetzt fur verschiebbare Binarpakete alle Dateipfade, die mit dem Installationsprafix in den Festlegungen zur Verschiebung beginnen, in NEUER_PFAD. --relocate ALTER_PFAD=NEUER_PFAD ubersetzt fur verschiebbare Binarpakete samtliche Dateipfade, die mit ALTER_PFAD beginnen, in die Paketverschiebeanweisungen nach NEUER_PFAD. Diese Option kann wiederholt verwendet werden, falls verschiedene ALTER_PFAD im Paket verschoben werden sollen. --replacefiles installiert die Pakete selbst dann, wenn sie Dateien aus anderen, bereits installierten Paketen uberschreiben. --replacepkgs installiert die Pakete selbst dann, wenn einige davon bereits auf diesem System installiert sind. OPTIONEN ZUM LOSCHEN --allmatches entfernt alle Versionen eines Pakets, die dem PAKETNAMEN entsprechen. Normalerweise wurde ein Fehler ausgegeben, wenn der PAKETNAMEN auf mehrere Pakete passt. TRANSAKTIONSOPTIONEN Die Transaktionsoptionen gelten fur die Aktionen --install, --upgrade, --reinstall und --erase. --deploops gibt Warnungen zu Abhangigkeitsschleifen aus. -h, --hash gibt 50 Rautezeichen aus, wenn das Paketarchiv entpackt wird. Verwenden Sie dies zusammen mit -v|--verbose, um eine schonere Ausgabe zu erhalten. --justdb aktualisiert nur die Datenbank, jedoch nicht das Dateisystem. --nodb aktualisiert nur das Dateisystem, jedoch nicht die Datenbank. --nodeps uberpruft vor dem Deinstallieren der Pakete keine Abhangigkeiten. --noorder ordnet die Pakete fur die Installation nicht neu. Die Paketliste wurde normalerweise neu geordnet, um Abhangigkeiten zu erfullen. --noplugins ladt keine Erweiterungen und fuhrt keine aus. --noscripts deaktiviert die Ausfuhrung von Paket-Scriptlets. Aquivalent zu --nopre --nopost --nopreun --nopostun --nopretrans --noposttrans --nopreuntrans --nopostuntrans --nopre --nopost --nopreun --nopostun --nopretrans --noposttrans --nopreuntrans --nopostuntrans fuhrt Scriptlets des benannten Typs nicht aus. --notriggers deaktiviert die Ausfuhrung von Paket-Triggern. Aquivalent zu --notriggerprein --notriggerin --notriggerun --notriggerpostun --notriggerin --notriggerun --notriggerprein --notriggerpostun deaktiviert die Ausfuhrung von Trigger-Scriptlets des benannten Typs. --percent gibt Prozentsatze beim Entpacken von Dateien aus dem Paketarchiv aus. Dadurch soll rpm leichter durch andere Werkzeuge nutzbar sein. --test deinstalliert nichts wirklich, sondern arbeitet nur die Schritte ab. Dies ist in Verbindung mit der Option -vv fur Debugging-Zwecke nutzlich. ABFRAGEOPTIONEN --qf ABFRAGEFORMAT, --queryformat ABFRAGEFORMAT bezeichnet das Ausgabeformat jedes abgefragten Pakets, wie in rpm-queryformat(7) beschrieben. Falls nicht angegeben, wird das in %_query_all_fmt in rpm-config(5) definierte Format verwendet. Es gibt drei Options-Untermengen zur Abfrage: Paketauswahl, Dateiauswahl und Informationsauswahl. PAKETAUSWAHLOPTIONEN -a, --all [SELEKTION ] fragt alle installierten Pakete ab. Eine optionale SELEKTION in der Form Tag=Muster kann bereitgestellt werden, um die Auswahl einzugrenzen, zum Beispiel name="b*", um Pakete abzufragen, deren Name mit >>b<< beginnt. --dupes listet Paketduplikate auf. -f, --file DATEI fragt das Paket ab, zu dem die DATEI gehort. --filecaps listet Dateinamen mit POSIX1.e-Capabilitys auf. --fileclass listet Dateinamen mit deren Klassen auf (Libmagic-Klassifizierung). --filecolor listet Dateinamen mit deren >>Farben<< auf (0 fur architekturunabhangig, 1 fur 32 Bit, 2 fur 64 Bit). --fileprovide listet Dateinamen mit deren Bereitstellungen auf. --filerequire listet Dateinamen mit deren Erfordernissen auf. -g, --group GRUPPE fragt Pakete ab, die zur angegebenen GRUPPE gehoren. --noglob Argumente bei der Installation von Paketdateien nicht als Glob behandeln. --nomanifest verarbeitet Nicht-Paketdateien nicht als Paketlisten (siehe rpm-manifest(5)). -p, --package PAKETDATEI fragt eine (nicht installierte) PAKETDATEI ab. --path PFAD fragt Pakete ab, denen PFAD gehort, ob die Datei installiert ist oder nicht. PFAD kann mehreren Paketen gehoren, die Datei gehort aber allein dem zuletzt installierten Paket. --querybynumber HDR-NUMMER fragt den Datenbankeintrag mit der angegebenen HDR-NUMMER direkt ab; dies ist nur fur Debugging-Zwecke nutzlich. --specfile SPEC-DATEI ist veraltet, verwenden Sie stattdessen rpmspec(1). --tid TID fragt Pakete mit der angegebenen Transaktionskennung TID ab. Als Transaktionskennung wird derzeit ein UNIX-Zeitstempel verwendet. Alle Pakete, die in einer einzelnen Transaktion installiert oder geloscht wurden, haben eine gemeinsame Kennung. --triggeredby PAKETNAME fragt alle Pakete ab, die vom Paket oder den Paketen PAKETNAME getriggert werden. --whatobsoletes FAHIGKEIT fragt alle Pakete ab, die die angegebene FAHIGKEIT als veraltet markieren, um korrekt funktionieren zu konnen. --whatprovides FAHIGKEIT fragt alle Pakete ab, die die angegebene FAHIGKEIT bereitstellen. --whatrequires FAHIGKEIT fragt alle Pakete ab, die die angegebene FAHIGKEIT zum korrekten Funktionieren benotigen. --whatconflicts FAHIGKEIT fragt alle Pakete ab, die mit der angegebenen FAHIGKEIT im Konflikt stehen. --whatrecommends FAHIGKEIT fragt alle Pakete ab, die die angegebene FAHIGKEIT empfehlen. --whatsuggests FAHIGKEIT fragt alle Pakete ab, die die angegebene FAHIGKEIT vorschlagen. --whatsupplements FAHIGKEIT fragt alle Pakete ab, die die angegebene FAHIGKEIT erganzen. --whatenhances FAHIGKEIT fragt alle Pakete ab, die die angegebene FAHIGKEIT erweitern. OPTIONEN ZUR PAKETABFRAGE --changelog zeigt Anderungsinformationen des Pakets an. --changes zeigt Anderungsinformationen mit vollstandigen Zeitstempeln fur das Paket an. --conflicts listet die Fahigkeiten auf, zu denen dieses Paket im Konflikt steht. --dump gibt Dateiinformationen wie folgt aus (impliziert -l): Pfad Grosse Anderungszeit Prufsumme Modus Eigentumer Gruppe istKonfiguration istDokumentation Rdev Symlink --enhances listet die Fahigkeiten auf, die dieses Paket verbessert. --filesbypkg listet alle Dateien in jedem ausgewahlten Paket auf. --filetriggers listet Dateitrigger-Scriptlets aus dem oder den angegebenen Paket(en) auf. -i, --info zeigt Paketinformationen wie Name, Version und Beschreibung an. Dies verwendet --queryformat, falls angegeben. --last ordnet die Paketauflistung nach Installationszeitpunkt, so dass die neuesten Pakete zuerst angezeigt werden. -l, --list listet die Dateien im Paket auf. --obsoletes listet Pakete auf, die durch dieses Paket als veraltet markiert werden. --provides listet die Fahigkeiten auf, die dieses Paket bereitstellt. --recommends listet die Fahigkeiten auf, die dieses Paket empfiehlt. -R, --requires listet die Fahigkeiten auf, von denen dieses Paket abhangt. --suggests listet die Fahigkeiten auf, die von Paket(en) vorgeschlagen werden. --supplements listet die Fahigkeiten auf, die von Paket(en) erganzt werden. --scripts listet das oder die paketspezifischen Scriptlet(s) auf, die als Teil des Installations- und Deinstallationsprozesses verwendet werden. -s, --state zeigt die Status der Dateien im Paket an (impliziert -l). Der Status jeder der Dateien ist normal, nicht installiert oder ersetzt. --triggers, --triggerscripts zeigt die Triggerskripte an, sofern vorhanden, die in einem Paket enthalten sind. --xml formatiert Kopfdaten der Pakete als XML. OPTIONEN ZUR DATEIAUSWAHL -A, --artifactfiles schliesst nur Artefakt-Dateien ein (impliziert -l). -c, --configfiles schliesst nur Konfigurationsdateien ein (impliziert -l). -d, --docfiles schliesst nur Dokumentationsdateien ein (impliziert -l). -L, --licensefiles schliesst nur Lizenzdateien ein (impliziert -l). --noartifact schliesst Artefakt-Dateien aus. --noconfig schliesst Konfigurationsdateien aus. --noghost schliesst Ghost-Dateien aus. UBERPRUFUNGSOPTIONEN Die Paket- und Dateiauswahloptionen sind die gleichen wie fur die Abfrage von Paketen (einschliesslich der Manifestdateien als Argumente, siehe rpm-manifest(5)). Weitere Optionen nur fur den Uberprufungsmodus sind: --nodeps uberpruft die Abhangigkeiten von Paketen nicht. --nodigest uberpruft beim Lesen keine Paket- oder Kopfdaten-Prufsummen. --nofiles uberpruft keine Attribute von Paketdateien. --noscripts fuhrt das %verifyscript-Scriptlet nicht aus (falls vorhanden). --nosignature uberpruft beim Lesen keine Paket- oder Kopfdaten-Signaturen. --nolinkto --nofiledigest (fruher --nomd5) --nosize --nomtime --nomode --nordev uberpruft das zugehorige Dateiattribut nicht. --nouser --nogroup uberpruft keine Zugehorigkeiten von Benutzer/Gruppe von Dateien. Beachten Sie, dass dazu nur lokale passwd(5)- und group(5)-Datenbanken konsultiert werden. --nocaps uberpruft keine Datei-Capabilitys. AUSGABE --verify Das Ausgabeformat besteht aus einer Zeichenkette mit 9 Ergebnis-Zeichen, die moglicherweise Attribut des Pakets sind, gefolgt vom Dateinamen. Jedes der 9 Zeichen steht fur das Ergebnis eines Vergleichs des Attributs oder der Attribute mit den Werten der Attribute, die in der Datenbank enthalten sind. Ein einzelner Punkt (>>.<<) bedeutet, dass der Test erfolgreich war, wahrend ein einzelnes Fragezeichen (>>?<<) bedeutet, dass der Test nicht ausgefuhrt werden konnte (zum Beispiel weil Dateizugriffsrechte den Lesezugriff verhindert haben). Anderenfalls bezeichnet ein fett hervorgehobenes Zeichen den Fehlschlag des korrespondierenden Tests mit --verify: Ergebnis Beschreibung S Dateigrosse (Size) unterscheidet sich M Modus unterscheidet sich (einschliesslich Berechtigungen und Dateityp) 5 Hash (fruher MD5-Summe) unterscheidet sich D Major/Minor-Geratenummer (Device) unterscheidet sich L readLink(2)-Pfad unterscheidet sich U Benutzereigentumerschaft (User) unterscheidet sich G Gruppe unterscheidet sich T mTime unterscheidet sich P caPabilitys unterscheiden sich Attribut Beschreibung a %artifact - eine beim Bau implizit erstellte zusatzliche Datei (wie ein Buildid-Link) c Konfigurationsdatei (%config) d Dokumentationsdatei (%doc) g %ghost-Datei l Lizenzdatei (%license) m %missingok - das Fehlen der Datei ist kein Uberprufungsfehler n %config(noreplace) - Konfigurationsdatei (%config) nicht ersetzen r Readme-Datei (%readme) s Spec-Datei im Quellpaket (siehe rpm-spec(5)) EXIT-STATUS Bei Erfolg wird 0 zuruckgegeben, anderenfalls ein Fehlercode ungleich Null. BEISPIELE rpm -Uvh hello-2.0-1.noarch.rpm Installiert oder aktualisiert das Paket hello-2.0-1.noarch.rpm mit ausfuhrlichen Ausgaben und Fortschrittsanzeige. -Uvh ist wahrscheinlich die haufigste aller rpm-Aktionen. rpm -Uvh --excludedocs --root /srv/test meinedistro-23.mft Installiert die in der Manifestdatei meinedistro-23.mft (siehe rpm-manifest(5)) beschriebenen Pakete im alternativen Systemwurzelverzeichnis unter /srv/test, ohne alle Dokumentationsdateien. rpm -Fvh *.rpm Aktualisiert installierte Pakete aus einem lokalen Verzeichnis, mit ausfuhrlichen Ausgaben und Fortschrittsanzeige. rpm -i kernel-6.15.4-200.x86_64.rpm Installiert das Paket kernel-6.15.4-200.x86_64.rpm im Hintergrund. Auf einigen Linux-Distributionen sollen verschiedene Kernel-Versionen parallel installiert werden, ohne altere zu loschen, um sicherzustellen, dass im Problemfall ein startfahiger Kernel vorhanden ist. Dies ist einer der wenigen Falle, in denen -i die richtige Wahl ist. rpm -evh --allmatches libhello Loscht alle Versionen des Pakets libhello auf dem System, mit ausfuhrlichen Ausgaben und Fortschrittsanzeige. Normalerweise ist immer nur eine Version eines Pakets installiert, aber in manchen Fallen ist es moglich, verschiedene Versionen eines Pakets oder das gleiche Paket fur verschiedene Architekturen parallel zu installieren. In diesem Fall kann --allmatches nutzlich sein. rpm -vh --reinstall hello-2.0-1.noarch.rpm Installiert das bereits installierte Paket hello-2.0-1.noarch.rpm neu, mit ausfuhrlichen Ausgaben und Fortschrittsanzeige. Nutzlich, wenn beispielsweise die Dateien eines Pakets versehentlich beschadigt oder geloscht werden. rpm -v --restore --all Setzt die Zugriffsrechte der Dateien in allen installierten Paketen auf ihre ursprunglichen Paketspezifikationen zuruck, mit ausfuhrlicher Ausgabe. rpm --verify --noconfig openssh-server Uberpruft die Integritat des installierten Pakets openssh-server und ignoriert dabei Anderungen der Konfiguration. rpm -qa Listet alle installierten Pakete in der Standardformatierung auf. rpm -qlv --noartifact glibc Listet die Dateien des Pakets glibc ahnlich wie bei der Ausgabe des Befehls ls(1) mit ls -l auf. Dabei werden >>Artefakt<<-Dateien wie Build-IDs weggelassen, die normalerweise nicht von Interesse sind. rpm -q --qf "[%{filenames} %{filedigests}\n]" openssh-server Listet die Dateinamen und die zugehorigen Prufsummen des installierten Pakets openssh-server auf. rpm -qp --scripts --triggers --filetriggers meinserver-1.0-1.x86_64.rpm Zeigt alle Scriptlets und Trigger aus der Paketdatei meinserver-1.0-1.x86_64.rpm anzeigen. Bevor Sie unbekannte Pakete installieren, tun Sie zumindest dies! rpm --target ppc64le --eval "%optflags" Gibt die Expansion des %optflags-Makros fur die ppc64le-Architektur aus. DATEIEN Siehe rpm-common(8), rpm-config(5) und rpm-rpmrc(5). SIEHE AUCH rpm-common(8), popt(3), rpm2cpio(1), rpmbuild(1), rpmdb(8), rpmkeys(8), rpmsign(1), rpmspec(1), rpm-queryformat(7) rpm-manifest(5) rpm-version(7) rpm-plugins(8) rpm --help - da rpm benutzerdefinierte Optionen uber Popt-Aliase unterstutzt, kann unmoglich garantiert werden, dass die Beschreibungen in diesem Handbuch exakt dem entsprechen, was verfugbar ist. http://www.rpm.org/ UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Christoph Brinkhaus , Helge Kreutzmann und Mario Blattermann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . RPM 6.0.1 6. Marz 2026 RPM(8)