RPM
Wie installiere oder entferne ich Software mit dem Red Hat/Fedora/openSUSE Linux-Paketmanager rpm?
Inhaltsverzeichnis
Allgemeines
RPMs (Dateiendung: *.rpm) sind gepackte Softwarepakete, die von den Distributionen Red Hat, Fedora und openSUSE Linux verwendet werden.
Jedes dieser RPM-Archive enthält neben den eigentlichen (komprimierten) Programmdateien noch einen (unkomprimierten) Header, der Informationen des Programms enthält (Beschreibung, Version, Abhängigkeiten).
Der RPM-Paketmanager ist ein mächtiges Kommandozeilen-Werkzeug zur Paketverwaltung:
Zu seinen Fähigkeiten gehören unter anderem das Installieren/Deinstallieren/Aktualisieren von Software-Paketen, Abfragen der rpm-Datenbank, Verifizieren der Paketsignatur oder das Erstellen von RPM-Paketen.
Trotzdem diese Distributionen den gleichen Paketmanager verwenden, sind die *.rpm Pakete der verschiedenen Distributionen nicht untereinander kompatibel. Es ist daher unbedingt darauf zu achten, das zu der jeweiligen Distribution (und Version) passende RPM zu verwenden.
Installation
Die Installation erfolgt mit:
rpm -i <Paket>
Um allerdings eventuellen Konflikten vorzubeugen sollte stattdessen unbedingt die Option Upgrade verwendet werden:
(die Optionen -h und -v erzeugen eine detailliertere Ausgabe)
rpm -Uhv <Paket>
Da der RPM-Paketmanager keine Repositories verwalten kann, ist er nicht in der Lage Paket-Abhängigkeiten selbstständig aufzulösen.
Um mehrere voneinander abhängige Pakete zu installieren, müssen diese zusammen an rpm übergeben werden:
rpm -Uhv <Paket1> <Paket2> ... <PaketN>
Oder man legt alle zu installierende Pakete in einem Ordner ab:
rpm -Uhv /ordner/*.rpm
Deinstallation
Die Deinstallation von Paketen erfolgt mit:
rpm -e <Paket>
Update
Ein Upgrade eines bereits installierten Paketes erfolgt mit:
rpm -Uhv <Paket>
Diese Methode ist auch bei der Installation von Paketen dem rpm -i <Paket> vorzuziehen!
Paketinformationen
Mit der Option query kann man sich Informationen zu einem bestimmten Paket anzeigen lassen:
Eine Liste der in dem Paket enthaltenen Dateien erhält man mit:
rpm -ql <Paketname>
Um Informationen (Name, Version, Beschreibung) zu einem Paket zu erhalten:
rpm -qi <Paketname>
Die Abhängigkeiten eines Paketes ermittelt man mit:
rpm -qR <Paketname>
Paketsuche
Selbstverständlich kann die rpm-Datenbank auch nach bestimmten Paketen/Bibliotheken durchsucht werden:
Listet alle Pakete, in deren Name ein bestimmter Suchbegriff enthalten ist:
rpm -qa | grep <Suchbegriff>
Um die Suche auf die enthaltenen Dateien bzw. die Paketbeschreibungen auszudehnen:
rpm -qal | grep <Suchbegriff> rpm -qai | grep <Suchbegriff>
Links
- Projektseite von rpm.org (englisch)
- Projektseite von rpm5.org (englisch)
- RPM-Guide (englisch)
- http://de.wikipedia.org/wiki/RPM
- http://de.opensuse.org/SDB:Rpm_-_Der_Paket-Manager_des_SuSE_Linux
- APT-RPM (englisch)
- XML Package Metadata (englisch)
- Das RPM-Buch von Thomas Schletter
- http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/RPM-HOWTO.html
- Links zu dem Thema „RPM“ aus dem Open Directory Project (Eintrag aus der Wikipedia)