Kapitel 5 Paketverwaltung mit RPM

Der RPM Package Manager (RPM) ist ein offenes, frei verfügbares System zur Paketverwaltung, und kann unter Red Hat Linux und anderen Linux- und UNIX-Systemen ausgeführt werden. Red Hat möchte andere Anbieter ausdrücklich dazu ermutigen, sich die Zeit zu nehmen, RPM näher zu betrachten und es für ihre eigenen Produkte zu verwenden. RPM kann gemäß den Lizenzbedingungen der GPL vertrieben werden.

Für den Endbenutzer stellt RPM viele Funktionsmerkmale bereit, die die Systemverwaltung so einfach wie nie zuvor machen. Das Installieren, Deinstallieren und Aktualisieren der RPM-Pakete wird jeweils durch Befehle ausgeführt, die nur eine einzelne Zeile umfassen - um komplizierte Details brauchen Sie sich nicht mehr zu kümmern. RPM verwaltet eine Datenbank mit den installierten Paketen und deren Dateien, die Ihnen das Durchführen effizienter Suchvorgänge und Überprüfungen in Ihrem System ermöglicht.

Während einer Aktualisierung behandelt RPM die Konfigurationsdateien auf besondere Weise, so dass Ihre Benutzereinstellungen nicht mehr verloren gehen können - ein Funktionsmerkmal, das bei gewöhnlichen .tar.gz-Dateien nicht möglich ist.

Dem Entwickler bietet RPM die Möglichkeit, Quellcode aus der Software zu extrahieren und ihn in Quell- und Binärpakete für die Endbenutzer zu packen. Dies ist ein recht einfaches Verfahren, das von einer einzelnen Datei sowie von optionalen Patches (von Ihnen erstellt) ausgeführt wird. Dieses einfache Konzept mit den "reinen" Quellen und Ihren Patches und build-Anweisungen erleichtert das Pflegen des Pakets, wenn neue Software-Versionen erscheinen.

AnmerkungBitte beachten
 

Obwohl es nicht schadet, das grundlegende Konzept von RPM zu begreifen, gibt es eine Alternative. Wenn Sie statt von der Befehlszeile aus lieber mit einer grafischen Benutzeroberfläche arbeiten, empfehlen wir Ihnen die Verwendung von Gnome-RPM. Weitere Informationen finden Sie in Kapitel 6.

RPM-Entwicklungsziele

Bevor Sie sich mit der Funktionsweise von RPM auseinander setzen, ist es sinnvoll, eine ungefähre Vorstellung von den Entwicklungszielen zu bekommen.

Aktualisierbarkeit

Mit RPM können Sie einzelne Komponenten Ihres Systems aktualisieren, ohne eine komplette Neuinstallation vornehmen zu müssen. Wenn Sie eine neue Version eines auf RPM basierenden Betriebssystems (z.B. Red Hat Linux) erhalten, müssen Sie auf Ihrem Computer keine Neuinstallation vornehmen (wie das bei Betriebssystemen der Fall ist, die auf anderen Paketsystemen basieren). RPM ermöglicht Ihnen eine intelligente, vollautomatische Aktualisierung Ihres vorhandenen Systems. Die Konfigurationsdateien in den Paketen werden während des Aktualisierungsvorgangs geschützt, so dass Sie Ihre Benutzereinstellungen nicht verlieren.

Leistungsstarke Abfragefunktionen

Ein weiteres Entwicklungsziel waren leistungsstarke Abfrageoptionen für RPM. Sie können Suchanfragen nach Paketen oder sogar nach bestimmten Dateien auf Ihre gesamte Datenbank ausdehnen. Außerdem können Sie schnell feststellen, zu welchem Paket eine Datei gehört und woher dieses Paket stammt. Die in einem RPM-Paket enthaltenen Dateien befinden sich in einem komprimierten Archiv zusammen mit einem benutzerdefinierten Binär-Header, der nützliche Informationen über das Paket und seinen Inhalt enthält und somit ein schnelles und einfaches Abfragen einzelner Pakete ermöglicht.

Systemüberprüfung

Ein weiteres leistungsstarkes Funktionsmerkmal ist das Überprüfen von Paketen. Wenn Sie sich Sorgen machen, weil Sie möglicherweise eine für ein bestimmtes Paket wichtige Datei gelöscht haben, können Sie das Paket einfach überprüfen. Sie werden über eventuell festgestellte Unstimmigkeiten benachrichtigt. Sie können dann das Paket neu installieren, falls dies erforderlich sein sollte. Sämtliche von Ihnen bearbeiteten Konfigurationsdateien bleiben während der Neuinstallation erhalten.

Unveränderter Quellcode

Ein wesentliches Entwicklungsziel war die Möglichkeit, den ursprünglichen und unveränderten Quellcode zur Verfügung zu stellen, wie er von den eigentlichen Autoren der Software vertrieben wird. Mit RPM steht Ihnen dieser ursprüngliche Code zusammen mit den verwendeten Patches und den kompletten build-Anweisungen zur Verfügung. Dies ist aus mehreren Gründen sehr vorteilhaft. Wenn beispielsweise eine neue Version eines Programms auf den Markt kommt, müssen Sie nicht unbedingt wieder von vorn anfangen und das Programm kompilieren. Sie schauen sich lediglich den Patch an und wissen, was Sie möglicherweise zu tun haben. Auf diese Weise können alle kompilierten Standardwerte und sämtliche Änderungen angezeigt werden, die vorgenommen wurden, um ein korrektes Erstellen der Software zu ermöglichen.

Dieses Ziel mag lediglich Entwicklern wichtig erscheinen, doch die daraus resultierende höhere Qualität der Software kommt auch den Endbenutzern zugute. Wir möchten an dieser Stelle den Mitarbeitern der BOGUS-Distribution danken, von denen das Konzept des unveränderten Quellcodes stammt.