2.1. Was ist Paketmanagement

Paketmanagement beschreibt die geordnete Verwaltung der einzelnen Softwarepakete auf ihrem System. Ziel ist dabei, dass Ihr Linux-System funktionstüchtig und benutzbar bleibt, insbesondere wenn Sie vorhandene Software aktualisieren, entfernen oder auch neue Software ergänzen.

Es umfasst daher nicht nur den Abgleich der lokalen Paketdatenbank mit den eingetragenen Paketverzeichnissen (Repositories), sondern auch die Auflistung der verfügbaren und derzeit verwendeten Pakete mit deren jeweiligen Statusinformation. Dazu gehört etwa die Paketbeschreibung, ob das Paket vollständig installiert ist und, falls ja, welche Version derzeit verwendet wird.

Weiterhin zählt zum Paketmanagement die automatische Auflösung von Paketabhängigkeiten. Das vereinfacht die Benutzung erheblich, da Sie die einzelnen Abhängigkeiten der Pakete nicht vorab recherchieren müssen. Diese Abhängigkeiten beeinflussen den lokalen Paketbestand und die Reihenfolge notwendiger Änderungen beim Hinzufügen, Aktualisieren oder Entfernen einer Paketauswahl. Daran schließen sich die plattform- und hardwarespezifische Konfiguration vor und nach der Installation von Paketen über die sogenannten Maintainer-Skripte an, die dpkg automatisch anstößt. Mehr Informationen dazu finden Sie in Abschnitt 4.2, „Aufbau und Format“.

Die Distribution selbst bzw. die verantwortlichen Paketmaintainer kümmern sich bei der Übersetzung und Bereitstellung der Pakete darum, dass die nachfolgende Zusammenstellung der Paketliste harmonisch ist und die verschiedenen Versionen der einzelnen Softwarepakete aufeinander abgestimmt sind. Jedes deb-Paket verfügt über eine Beschreibung in Textform sowie eine Liste der Pakete, von denen es abhängt – bei Bedarf sogar samt Versionsangabe.

Die Aktualisierung einer bereits bestehenden, installierten Softwareversion durch eine andere Version beinhaltet i.d.R. eine fehlerbereinigte oder erweiterte Variante des Programms. Das kann eine individuelle Sicherheitsaktualisierung sein, das Installieren eines sogenannten Debian Backports, d.h. eine neuere Paketversion wird für eine vorherige Veröffentlichung zurückportiert, aber auch im Rahmen einer Aktualisierung auf eine neue Veröffentlichung der Distribution (siehe Abschnitt 2.10, „Veröffentlichungen“) stattfinden. Dass letzteres überhaupt möglich ist, ist noch lange nicht bei allen Distributionen selbstverständlich. Lange Zeit war dies ein Alleinstellungsmerkmal von Debian und auch heute noch bieten einige Debian-Derivate diese Eigenschaft nicht. Gleiches gilt für den Wechsel auf eine zurückliegende Softwareversion, einen sogenannten Downgrade. Dies wird allerdings auch bei Debian nicht explizit unterstützt, funktioniert aber dennoch in den meisten Fällen.

Im Detail erklären wir Ihnen die Thematik unter Pakete aktualisieren (siehe Abschnitt 8.41, „Pakete aktualisieren“), Distribution aktualisieren (siehe Abschnitt 8.47, „Distribution aktualisieren (update und upgrade)“), Paket downgraden (siehe Abschnitt 8.42, „Pakete downgraden“) und dem Debian Backports Archiv (siehe Kapitel 19, Backports).

Nachfolgende Ausgaben zeigen zweierlei – die Liste aller Pakete am Beispiel von dpkg und die ausführliche Übersicht auf der Basis von apt-cache. Ersteres listet alle installierten Pakete zur Textverarbeitung Abiword auf. Ersichtlich ist der Installationsstatus (erste Spalte), der Paketname und die Paketversion (zweite und dritte Spalte) sowie eine Paketbeschreibung (vierte Spalte). Auf das Werkzeug dpkg gehen wir en detail in den beiden Abschnitten Softwarestapel und Ebenen (Abschnitt 2.3, „Softwarestapel und Ebenen“) und dpkg (Abschnitt 6.2.1, „dpkg) ein.

Ausgabe aller derzeit installierten Pakete für Abiword mit dpkg

$ dpkg -l "abiword*"
Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
| Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
         Halb installiert/Trigger erWartet/Trigger anhängig
|/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
||/ Name                Version        Architektur    Beschreibung
+++-===================-==============-==============-============================================
ii  abiword             2.9.2+svn20120 i386           efficient, featureful word processor with co
ii  abiword-common      2.9.2+svn20120 all            efficient, featureful word processor with co
ii  abiword-plugin-gram 2.9.2+svn20120 i386           grammar checking plugin for AbiWord
ii  abiword-plugin-math 2.9.2+svn20120 i386           equation editor plugin for AbiWord
$

In Beispiel zwei nutzen wir apt-cache mit dem Parameter showpkg, um weitere Details zum Paket abiword-common zu erhalten. Neben der Versionsnummer sind auch die Paketquelle, die Paketsignaturen sowie die Abhängigkeiten zu weiteren Paketen genannt. Die Pakete stammen aus dem main-Zweig von Debian 7 Wheezy, sind für die Architektur i386 kompiliert und wurden vom deutschen FTP-Server des Debian-Projekts bezogen. Die einzige Abhängigkeit besteht zum Paket abiword.

Auflistung der Paketdetails zum Paket abiword-common mittels apt-cache

$ apt-cache showpkg abiword-common
Package: abiword-common
Versions:
2.9.2+svn20120603-8 (/var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_main_binary-i386_Packages) (/var/lib/dpkg/status)
 Description Language:
                 File: /var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_main_binary-i386_Packages
                  MD5: 168081fc8391dc5eb8f29d63bb588273
 Description Language: de
                 File: /var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_main_i18n_Translation-de
                  MD5: 168081fc8391dc5eb8f29d63bb588273
 Description Language: en
                 File: /var/lib/apt/lists/ftp.de.debian.org_debian_dists_wheezy_main_i18n_Translation-en
                  MD5: 168081fc8391dc5eb8f29d63bb588273


Reverse Depends:
  abiword,abiword-common 2.9.2+svn20120603-8
Dependencies:
2.9.2+svn20120603-8 -
Provides:
2.9.2+svn20120603-8 -
Reverse Provides:
$