RPM Package Manager

RPM Package Manager
Icon tools.svg Dieser Artikel wurde im Portal Freie Software zur Verbesserung eingetragen. Hilf mit, ihn zu bearbeiten und beteilige dich an der Diskussion!
Vorlage:Portalhinweis/Wartung/Freie Software
RPM Package Manager
Logo von RPM Package Manager
Aktuelle Version 4.9.0
(2. März 2011)
Betriebssystem Unixartige Systeme wie bspw. GNU/Linux
Kategorie Paketverwaltung
Lizenz GPL (Freie Software)
Deutschsprachig Ja
rpm.org

RPM Package Manager ist ein freies (GPL) Software-Paketverwaltungssystem ursprünglich entwickelt von dem Unternehmen Red Hat. Es umfasst das Paketformat und alle nötigen Programme, um RPM-Pakete zu erstellen und verwalten.

Das RPM-Format ist Teil der Linux Standard Base und bedeutet RPM Package Management, ein rekursives Akronym.

Inhaltsverzeichnis

Hintergrund

Hauptartikel: Paketverwaltung

In der Frühzeit von Linux waren die tgz-Pakete gang und gäbe; eine automatisierte Verwaltung war mit ihnen kaum möglich. Ein gezieltes Deinstallieren einzelner Pakete war nicht möglich. Auch wurden Abhängigkeiten weder aufgelöst, noch wurde zumindest eine Warnung ausgegeben. Anwender, die Software installieren wollten, mussten entweder genug wissen, um diese Abhängigkeiten selbst aufzulösen, oder installierten einfach alle Pakete, was aber wiederum die Gefahr von Paketkonflikten mit sich brachte.

Gewisse Ansätze einer Paketverwaltung gab es, als in Anlehnung an die großen Paketverwaltungen der etablierten Unix-Systeme dieser Zeit – wie SunOS (ein Vorläufer von Solaris), HP-UX, OSF/1, IRIX oder Apollo Domain/OS – erste Werkzeuge entwickelt wurden, die jedoch nur wenige Funktionen mitbrachten.

Dies verursachte den Linux-Distributoren dieser Zeit erhebliche Probleme beim Support und bei der Pflege ihrer Software, woraufhin zwei konkurrierende Systeme entwickelt wurden: das Debian-Paketmanagement dpkg für Debian-Pakete, initiiert vom Debian Projekt, und RPM von Red Hat.

Das Ziel war es, Softwarepakete genauso für den Entwickler wie auch für den Anwender einfacher handhabbar zu machen, Abhängigkeiten sollten berücksichtigt und möglichst automatisch aufgelöst werden. Redundanzen wie doppelte Dateien oder Verzeichnisse sollte das System vermeiden, und es sollte möglich sein, Software sauber zu deinstallieren und dabei Abhängigkeiten zu beachten. Auch sollte es möglich werden, Software einfach zu aktualisieren und Konfigurationsdateien sicher zu verwalten.

Eine Funktion zur Rückabwicklung bei Fehlern (Transaktionen und Rollback) ist inzwischen ebenso Bestandteil von RPM wie bei den großen Paketverwaltungen von HP-UX und Solaris, wenn auch noch nicht in gleichem Umfang.

Geschichte

Die erste Version von RPM basierte auf RPP, PMS (in den 1990er Jahren von Rik Faith für Linux-Betriebssysteme entwickelt) und PM und wurde in Perl geschrieben. Später wurde RPM in C neu geschrieben.

Ursprünglich bedeutete RPM Red Hat Package Management. Ende der Neunziger wurde der Name jedoch in RPM Package Management geändert. Der Hintergrund waren rechtliche Aspekte. RPM wurde inzwischen von vielen Distributoren verwendet, und man strebte die Aufnahme von RPM in die Linux Standard Base an. Der Unternehmensname (Firma) im Namen der Software hätte dies zumindest erschwert.

Zwischen 1999 und 2006 kam die Weiterentwicklung der Software praktisch zum Erliegen. Jeff Johnson, der Hauptentwickler von RPM bei Red Hat bis 1999, entwickelte jedoch die Software teilweise weiter und kümmerte sich um Fehlerkorrekturen. Aus diesem Zweig entstand RPM5 als Weiterentwicklung von RPM der Version 4.[1]

Die verschiedenen Distributoren entwickelten in der Zwischenzeit (1999–2006) eigene Patches für RPM, um Fehler zu beseitigen; Johnsons Patches wurden meist nicht verwendet.

Im Dezember 2006 schlossen sich verschiedene Distributoren unter Red Hat und Novell zum RPM-Projekt zusammen und entwickelten RPM mit den jeweiligen distributionseigenen Patches – weiterhin ohne Johnsons Änderungen – gemeinsam weiter.[2]

Daraus resultieren nun zwei Versionen von RPM: RPM mit Patches der Distributoren und RPM5, welches sich als RPM aus der „originalen Codebasis“ bezeichnet.[3]

Da die meisten Linux-Distributionen freie Software sind, besteht der Vorteil einer bestimmten Distribution gegenüber anderen zu einem großen Teil aus den Annehmlichkeiten des jeweiligen Paket-Managers (und aus den zusammengestellten, getesteten und regelmäßig aktualisierten (RPM-)Paketsammlungen des jeweiligen Distributors im Internet). Pakete zwischen Distributoren auszutauschen, war früher nahezu unmöglich. Dies wurde mit RPM einfacher, ist aber immer noch mit Problemen behaftet, da die verschiedenen Distributionen, die RPM benutzen, oft verschiedene Versionen und/oder Konfigurationen von Systemsoftware wie etwa Grafik-Bibliotheken verwenden.

Für den Entwickler vereinfacht ein Paketverwaltungssystem wie RPM das Einbauen von Software in die durch die Distribution vorgegebene Struktur (Pfade, Abhängigkeiten, Dateinamen, Paketnamen). Das Paketformat selbst überprüft allerdings den jeweiligen Inhalt eines Pakets nicht automatisch. Der Entwickler bestimmt den Aufbau des Paketes selbständig und muss sich damit für jede Distribution in die jeweiligen Besonderheiten einarbeiten.

Mit Einführung der Linux Standard Base wurden viele Unstimmigkeiten zwischen den Distributoren ausgeräumt. LSB erleichtert die Arbeit der Paketbauer erheblich, weil zumindest Dateinamen und Pfade vereinheitlicht sind. Entsprechende Sorgfalt des Paketmaintainers vorausgesetzt, lässt sich relativ sicher ein RPM von einem anderen LSB-Distributor in ein beliebiges anderes LSB-System einspielen.

Portierungen

Eine Paketverwaltung ist systemabhängig. So besitzen außer verschiedenen Distributoren nicht mal alle Linuxanbieter das gleiche Paketformat. Andere Systeme bringen natürlich ihre eigene Software mit.

Da aber auf vielen anderen Unix-Systemen mittlerweile die GNU-Software zur Grundausstattung gehört (zumindest installiert der Systemverwalter sie in der Regel ganz schnell nach) wurde auch RPM – vor allem im Rahmen des OpenPKG Projektes – auf andere Systeme portiert, wodurch man einfach zusätzliche Software einspielen kann.

In gewissem Sinn ist dies gleichermaßen ein Fortschritt und ein Rückschritt. Bisher haben Systemverwalter aus den Quellen die Software selber kompiliert und dann in das System eingepflegt. Dieser Schritt und die damit angefallene Arbeit entfallen natürlich.

Allerdings gibt es zwischen der Paketdatenbank von RPM und der systemeigenen Paketdatenbank keine Kommunikation, und somit werden doppelte Installationen genauso wenig aufgelöst wie fehlende Systemabhängigkeiten über die Paketsysteme hinweg.

Siehe auch

Weblinks

Einzelnachweise

  1. The Story of RPM auf redhat.com, 8. Juli 2007
  2. Pro-Linux, News von 15. Dezember 2006
  3. rpm5.org

Wikimedia Foundation.

Игры ⚽ Нужна курсовая?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • RPM Package Manager — (RPM) Original author(s) Red Hat Developer(s) Community[1] Stable release 4.9.0 / March 2, 2011; 8 months ago ( …   Wikipedia

  • RPM Package Manager — Saltar a navegación, búsqueda RPM Package Manager Desarrollador Red Hat …   Wikipedia Español

  • RPM Package Manager — (o RPM, originalmente llamado Red Hat Package Manager) es un sistema de administración de paquetes pensado básicamente para Linux. Es capaz de instalar, actualizar, desinstalar, verificar y solicitar programas. RPM es el formato de paquete de… …   Enciclopedia Universal

  • RPM Package Manager — Pour les articles homonymes, voir RPM. RPM Package Manager …   Wikipédia en Français

  • RPM Package Manager — …   Википедия

  • Smart Package Manager — Infobox Software name = Smart Package Manager caption = Smart Package Manager on Ubuntu collapsible = author = developer = released = latest release version = 1.1 [http://lists.labix.org/pipermail/smart labix.org/2008 September/003751.html]… …   Wikipedia

  • Debian Package Manager — dpkg ist die Basis der Paketverwaltung des Betriebssystems Debian und das grundlegende Programm zum Installieren und Manipulieren von Debian Binärpaketen (Dateiendung „.deb”). Der Name dpkg ist eine Abkürzung für Debian Package. Das Debian… …   Deutsch Wikipedia

  • Red Hat Package Manager — RPM Package Manager Aktuelle Version: 5.1.9 (18. April 2009) Betriebssystem: Unixoide Systeme wie bspw …   Deutsch Wikipedia

  • Red Hat Package Manager — RPM Package Manager Pour les articles homonymes, voir RPM. RPM Package Manager (Red Hat Package manager ou RPM) est un système de gestion de paquets de logiciels utilisé sur certaines distributions GNU/Linux. Le système est composé d un format… …   Wikipédia en Français

  • Synaptic Package Manager — Infobox Software name = Synaptic Package Manager caption = A screenshot of Synaptic developer = Michael Vogt latest release version = 0.61 latest release date = release date and age|2007|12|06 operating system = Linux genre = Package manager… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”