Home Wiki > Portal:Paket-Management
Sign up | Login

Portal:Paket-Management

tagline: Aus openSUSE

Willkommen beim Paket-Management Portal edit

OWN-oxygen-New-Updated-Applications.png

Paket Management

Eine Linux-Distribution, und openSUSE ist da keine Ausnahme, ist ein Bündel von Anwendungen, gespeichert in Paketen, und den notwendigen Werkzeugen, diese zu verwalten. Ein Paket ist dabei ein Archiv, in welchem sich alle notwendigen Dateien einer Anwendung befinden; zusätzlich eventuell auch noch weitere Anweisungen die sie zum Laufen bringen.

Zur Zeit gibt es drei verbreitete Paketarten:

  • tgz (tar-gzip-Dateien)
    Hierbei handelt es sich um Basisarchive, sie können alles enthalten, was der Paketbetreuer für nützlich hält. Abseits vom Archivformat selbst enthält es aber keine weiteren standardisierten Informationen.
  • deb (Das Debian Paketformat)
    Dies ist das Standardpaketformat der Debian-Distribution und ihrer Derivate wie Ubuntu.
  • rpm (Das RPM (RPM Package Manager) Paketformat)
    Dieses Paketformat wurde zuerst von Red Hat entwickelt und wird mittlerweile von vielen Distributionen verwendet.

openSUSE hat in seinen Anfängen noch tgz verwendet, bis auf rpm umgestiegen wurde was es auch aktuell verwendet wird. openSUSE bietet all die Paketverwaltungswerkzeuge um jedes Paketsystem zu verwalten, aber lediglich das RPM-System wird offiziell unterstützt und hier auch vorgestellt.


Themen edit

Anwendungs-Pakete.png

Verknüpfungen

Das wichtigste an Paketen sind die Verknüpfungen die sie enthalten. Als erstes wären da die im Archiv enthaltenen Dateien, welche mit dem Paket verknüpft sind, womit sich bspw. herausfinden lässt, welche Datei zu welchem Paket gehört oder welches Paket welche Dateien bereitstellt. Zusätzlich hängen Pakete auch meist von anderen Paketen ab. Ein Paket enthält in der Regel nie alles, was es braucht, um die enthaltene Anwendung auszuführen. Dafür benötigt es eine passende Umgebung (andere Werkzeuge, Bibliotheken, usw.), welche durch viele andere Pakete bereitgestellt wird. Diese Abhängigkeiten aufzulösen ist eine der wichtigsten Aufgaben einer Paketverwaltung. Weitere Informationen über Pakete, Abhängigkeiten und Verwaltung erhalten Sie auf der Seite mit dem Thema: Paket/Software -Management.


OWN-oxygen-New-Updated-Applications.png

RPM-Pakete

Die Software von SUSE Linux und openSUSE wird in Form von RPM-Paketen ausgeliefert. RPM (RPM Package Manager) ist ein leistungsfähiger Paketverwalter, dessen Kommandozeilenwerkzeuge eines jedoch nicht beherrschen: Das Lösen von Problemen. RPM informiert den Nutzer zwar über auftretende Probleme, lässt ihn bei der Lösung aber allein im Regen stehen.

Wenn Sie beispielsweise Paket A installieren wollen, welches von der Installation von Paket B abhängig ist, wird RPM dieses nicht automatisch installieren, sondern ihnen nur mitteilen, dass es erst Paket B benötigt. Es ist dann am Benutzer, erst Paket B zu installieren, um danach Paket A installieren zu können. Stellen Sie sich nun vor, Paket B benötigt noch die Pakete C und D, von denen Paket C wiederum Paket D benötigt und so weiter und so fort. Sie müssten dann erst alle Abhängigkeiten in diesem Paketbaum manuell auflösen, nur um Paket A installieren zu können. Das ist im Allgemeinen auch unter RPM-Abhängigkeiten Hölle bekannt und RPM hilft ihnen in keinster Weise, dieser zu entrinnen.

Warum ist das so? Ganz einfach. RPM ist dafür gar nicht zuständig. Es war nie als benutzerfreundliches Software-Installationsprogramm gedacht, sondern einfach nur als leistungsfähiger Paketverwalter. Den Benutzer bei der Lösung solcher Probleme zu unterstützen ist eine ganz andere Aufgabe. So folgt RPM dem guten, alten UNIX/Linux-Grundsatz: "Ein Programm sollte eine Aufgabe erledigen (und das sehr gut)!"

Deshalb benötigen wir Programme oberhalb von RPM um dies zu tun. Und da haben Sie eine breite Auswahl. Im folgenden soll ihnen geholfen werden, ein geeignetes Software-Installationsprogramm zu finden.


Paket-Download-Icon.png

Paket Repositorys

Bevor Sie ein Paket installieren können muss dieses auch verfügbar sein, entweder auf einem physischen Medium wie einer DVD oder einem nicht physischen wie dem Internet. All das wird Paketdepot oder im englischen Repository genannt, wobei es auch noch andere Bezeichnungen wie Installationsquelle oder Katalog gibt. Mehr unter Repository zu Aufbau und Funktion derselben.


Icon-package.png

Werkzeuge zur Paketverwaltung

SUSE Linux und openSUSE liefern eine große Bandbreite unterschiedlicher Paketverwalter aus, so dass sich für jeden Geschmack das passende Werkzeug finden lassen sollte. Einige arbeiten nur mit RPM-Paketen, andere sind allgemeiner gefasst und können auch mit Patches, Schemata und Produkten umgehen.

YaST2

Das Paketverwaltungsmodul von YaST ist das wohl am häufigsten eingesetzte Programm unter SUSE Linux um Software zu installieren und zu deinstallieren. Die Verwaltung der Installationsquellen wird in einem eigenen Modul vorgenommen. Beide funktionieren auch in der Konsole über die ncurses-Oberfläche von YaST. Dokumentation zu diesen YaST-Modulen kann im Handbuch SUSE Linux Start gefunden werden. YaST setzt dabei seit SUSE Linux 10.1 auf die Libzypp auf.

  • Vorteile
    • Einfache Handhabung der grafischen Oberfläche
    • Gute Dokumentation in den Handbüchern
    • Unterstützt auch die Erweiterungen für Patches, Schemata und Produkte
  • Nachteile
    • Recht Langsam
    • Komplexere Dinge lassen sich nur recht umständlich lösen

Zypper

Zypper ist der Nachfolger von Y2pmsh und seit der Ausgabe openSUSE 10.2 enthalten. Auch hier gibt es zwei Arten der Benutzung; Sie können zum einen direkt Befehle übergeben und zum anderen eine integrierte Kommandozeile starten. Die Quellen sind ebenfalls synchron zu YaST, da Zypper genau wie YaST auch, auf die Libzypp zugreift.

  • Vorteile
    • Einfache Handhabung
    • Quellen sind synchron zu YaST
    • Unterstützt auch die Erweiterungen für Patches, Schemata und Produkte
  • Nachteile
    • Recht langsam (gilt ab der in openSUSE 11.1 enthaltenen Version nicht mehr)
    • Komplexere Dinge lassen sich nur recht umständlich lösen
  • Anleitung

Smart

Smart ist eine noch recht junge Paketverwaltung. Ziel ist es, die Probleme, die sich beim Installieren, Entfernen und Aktualisieren von Software ergeben, auf elegante Weise zu lösen. Also genau das, was RPM nicht vermag. Smart kann mit vielen verschiedenen Arten von Paketdepots und Paketformaten umgehen, wobei unter openSUSE natürlich nur RPM interessant ist.

  • Vorteile
    • Unterstützung für viele Depotarten
    • Ausgereifte Algorithmen zur Lösung von Abhängigkeiten
    • Auch komplexe Abhängigkeiten können meist elegant gelöst werden
  • Nachteile
    • Relativ langsam
    • Etwas Einarbeitungszeit erforderlich
    • Unterstützt keine Erweiterungen für Patches, Schemata und Produkte
  • Anleitung

YUM

Der Yellowdog Updater, Modified ist ein Paketverwaltungswerkzeug welches für die Distribution Yellow Dog Linux entwickelt wurde. Er verarbeitet RPM-Pakete, neben dem Kommandozeilenwerkzeug existieren auch grafische Oberflächen. Eine Anleitung zu YUM unter openSUSE finden Sie hier.

  • Vorteile
    • Relativ schnell
    • Ausgereifte Algorithmen zur Lösung von Abhängigkeiten
  • Nachteile
    • Etwas Einarbeitungszeit erforderlich
    • Unterstützt keine Erweiterungen für Patches, Schemata und Produkte
  • Anleitung


Welche Paketverwaltung ist die richtige? edit

Archive-extract.png

Welchen Paketverwalter für wen?

Wenn Sie nur hin und wieder mal ein Paket von der Installations-CD oder DVD installieren wollen und nur ein oder zwei weitere Paketquellen verwenden wollen, dann sind die Paketverwaltung von YaST sowie Zypper ihre Freunde.

Wenn Sie ausgiebig Gebrauch vom Build Service und anderen Quellen machen wollen und es ihnen bei ihrer Paketverwaltung vor allem auf die Geschwindigkeit ankommt, dann sollten Sie sich YUM anschauen, Zypper ist in aktuellen Versionen auch hier empfehlenswert.

Sie wollen immer wieder Software installieren, aktualisieren und deinstallieren, egal aus welchen Quellen und wollen dabei von der Paketverwaltung nach besten Kräften bei der Lösung von Abhängigkeiten unterstützt werden, dann leistet ihnen Smart hervorragende Dienste.