Product SiteDocumentation Site

Kapitel 6. Wartung und Aktualisierung: Die APT-Tools

6.1. Befüllen der sources.list Datei
6.1.1. Sonstige verfügbare offizielle Depots
6.1.2. Inoffizielle Resourcen: apt-get.org und mentors.debian.net
6.2. aptitude und apt-get Befehle
6.2.1. Initialisierung
6.2.2. Installieren und Entfernen
6.2.3. Das System aktualisieren
6.2.4. Konfigurationsoptionen
6.2.5. Paketprioritäten verwalten
6.2.6. Mit mehreren Distributionen arbeiten
6.3. Der Befehl apt-cache
6.4. Benutzeroberflächen: aptitude, synaptic
6.4.1. aptitude
6.4.2. synaptic
6.5. Die Echtheit eines Paketes prüfen
6.6. Von einer Stable Distribution auf die nächste aktualisieren
6.6.1. Empfohlene Vorgehensweise
6.6.2. Problembehandlung nach einer Aktualisierung
6.7. Ein System aktuell halten
6.8. Automatische Aktualisierungen
6.8.1. dpkg konfigurieren
6.8.2. APT konfigurieren
6.8.3. debconf konfigurieren
6.8.4. Interaktiver Umgang mit der Kommandozeile
6.8.5. Die Wunderkombination
6.9. Pakete suchen
Das Debian bei Administratoren so beliebt ist, liegt an der Einfachheit mit der das ganze System installiert und aktuell gehalten werden kann. Dieser einzigartige Vorteil rührt weitestgehend vom Programm APT, dessen Funktionen sich die Administratoren von Falcot Corp mit Begeisterung angeeignet haben.
APT ist die Abkürzung für Advanced Package Tool (fortschrittliches Paketierungstool). Den Begriff fortschrittlich verdient sich das Tool durch sein Herangehen an Pakete. Es bewertet diese nicht einfach individuell, sondern betrachtet die Pakete als Ganzes und erzeugt die bestmögliche Kombination von Paketen abhängig davon, welche (je nach Abhängigkeit) verfügbar und kompatibel sind.
APT benötigt eine "Liste der Paketquellen": Die Datei /etc/apt/sources.list enthält eine Liste der verschiedenen Depots (oder "Quellen"), die Debian Pakete zur Verfügung stellen. APT importiert dann von jeder Quelle die Liste der dort verfügbaren Pakete. Dazu lädt APT von jeder Quelle die Dateien Packages.gz oder Packages.bz2 (falls es sich um Binärpakete handelt) und Sources.gz oder Sources.bz2 (falls es sich um Quelltextpakete handelt) herunter und analysiert deren Inhalt. Falls bereits ältere Versionen dieser Dateien gespeichert wurden, kann APT diese aktualisieren, indem es nur die geänderten Teile herunterlädt (siehe die Seitenleiste TIPP Inkrementelle Aktualisierung).

6.1. Befüllen der sources.list Datei

Jede aktive Zeile in der Datei /etc/apt/sources.list enthält die Beschreibung einer Quelle, bestehend aus drei, durch Kommata getrennten, Teilen.
Das erste Feld bezeichnet die Art der Quelle:
  • deb” für Binärpakete,
  • deb-src” für Quellpakete.
Das zweite Feld gibt den Basis-URL der Quelle an (kombiniert mit den Dateinamen in den Dateien namens Packages.gz müssen sich vollständige und gültige URLs ergeben): Diese Quelle kann aus einem Debian-Spiegelserver bestehen oder einer Paketsammlung, die von dritter Seite aufgesetzt wurde. Der URL kann mit file:// beginnen, um eine Quelle anzugeben, die sich im lokalen Verzeichnisbaum des Systems befindet, mit http://, um eine Quelle anzugeben, die auf einem Webserver zugreifbar ist, oder mit ftp:// für eine auf einem FTP-Server verfügbare Quelle. Der URL kann auch mit cdrom:// beginnen, bei einer CD-ROM-basierten Installation, allerdings wird dies seltener, da netzbasierte Installationsmethoden mehr und mehr die Regel werden.
Die Syntax des letzten Feldes hängt davon ab, ob die Quelle zu einem Debian-Spiegelserver gehört oder nicht. Im Falle eines Debian-Spiegels wird die gewählte Distribution benannt (stable, testing, unstable oder ihre aktuellen Codenamen – siehe die Liste in der Seitenleiste GEMEINSCHAFT Bruce Perens, ein umstrittener Leiter), dann die zu aktivierenden Abschnitte (Auswahl zwischen den Bereichen main, contrib und non-free. In allen anderen Fällen wird einfach das Unterverzeichnis der gewünschten Quelle angegeben (dies ist oft ein einfaches „./“, welches das Fehlen eines Unterverzeichnisses kennzeichnet – dann liegen die Pakete direkt am angegebenen URL).
Im Allgemeinen kann der Inhalt einer standardmäßigen sources.list-Datei Folgendes sein:
Beispiel 6.1. /etc/apt/sources.list Datei
# Security updates
deb http://security.debian.org/ stable/updates main contrib non-free
deb-src http://security.debian.org/ stable/updates main contrib non-free

# Debian mirror
deb http://ftp.debian.org/debian stable main contrib non-free
deb-src http://ftp.debian.org/debian stable main contrib non-free

Diese Datei listet alle Paketquellen, die zur stabilen Debian-Version gehören. Falls Sie Testing oder Unstable verwenden möchten, müssen Sie natürlich die passenden Zeilen hinzufügen (oder die bestehenden ersetzen). Wenn die gewünschte Version eines Paketes in mehreren Paketquellen verfügbar ist, wird die Quelle benutzt, die als erstes in der Datei sources.list aufgeführt ist. Aus diesem Grunde werden inoffizielle Quellen für gewöhnlich am Ende der Datei hinzugefügt.
Die Datei sources.list enthält verschiedene andere Eintragstypen: Einige beschreiben Ihre Debian-CD-ROMs. Im Gegensatz zu anderen Einträgen ist eine CD-ROM nicht immer verfügbar, da sie im Laufwerk eingelegt sein muss. Außerdem kann immer nur eine CD-ROM zum gleichen Zeitpunkt gelesen werden – demzufolge werden diese Quellen ein kleines bisschen anders gehandhabt. Diese Einträge müssen mit dem Programm apt-cdrom hinzugefügt werden, üblicherweise ausgeführt mit dem Parameter add. Letzterer fordert Sie dann auf, die CD-ROM in das Laufwerk einzulegen, um dann deren Inhalt nach Packages-Dateien zu durchsuchen. DasProgramm nutzt diese Dateien, um die Datenbank verfügbarer Pakete zu aktualisieren (dies geschieht für gewöhnlich mit dem Befehl aptitude update). Von diesem Moment an kann APT auffordern, die CD-ROM einzulegen, falls es eines ihrer Pakete benötigt.

6.1.1. Sonstige verfügbare offizielle Depots

6.1.1.1. Stable Aktualisierungen

Einmal veröffentlicht, wird die Distribution Stable nur noch etwa alle 2 Monate aktualisiert, um die auf security.debian.org veröffentlichten Sicherheitsaktualisierungen zu integrieren.
Diese Zwischenaktualisierung kann auch Aktualisierungen für Pakete einbeziehen, die sich mit der Zeit weiterentwickeln, wie die Spam-Erkennungsregeln von spamassassin, die Viren-Datenbank von clamav oder die Sommerzeit-Regelungen aller Zeitzonen (tzdata).
All diese Aktualisierungen werden in einem Repository vorbereitet, das als proposed-updates bekannt ist. Jeder kann dieses Repository benutzen, um diese Aktualisierungen vor ihrer offiziellen Veröffentlichung zu testen. Der Auszug unten benutzt den Alias squeeze-proposed-updates, der sowohl deutlicher als auch konsistenter ist, da auch ein lenny-proposed-updates (für die Aktualisierungen für Oldstable) existiert:
deb http://ftp.debian.org/debian squeeze-proposed-updates main contrib non-free
Einmal fertiggestellt, werden die wichtigsten Aktualisierungen – die, die nicht auf die nächste Zwischenveröffentlichung von Debian warten können – in dem Repository stable-updates veröffentlicht (welches die meisten Systeme benutzen sollten):
deb http://ftp.debian.org/debian stable-updates main contrib non-free

6.1.1.2. Die Rückportierungen von backports.debian.org

Wenig überraschend beherbergt der Server backports.debian.org „Paket-Rückportierungen“. Der Begriff bezeichnet ein Paket einer neueren Software-Version, die für eine ältere Distribution neu kompiliert wurde, generell für Stable. Wenn eine Distribution älter wird, haben viele Software-Projekte bereits neuere Versionen veröffentlicht, die nicht in das gegenwärtige Stable integriert werden (welches nur verändert wird, um die allerkritischsten Probleme, wie Sicherheitslücken, zu behandeln). Weil die Distributionen Testing und Unstable risikobehaftet sein können, bieten einige Freiwillige manchmal Rekompilierungen neuerer Software-Anwendungen für Stable an, was den Vorteil hat, mögliche Instabilitäten auf eine kleine Anzahl ausgewählter Pakete zu begrenzen. http://backports.debian.org/
Der sources.list-Eintrag für Rückportierungen, welche die Distribution Squeeze als Ziel haben, ist folgendermaßen:
deb http://backports.debian.org/debian-backports squeeze-backports main contrib non-free

6.1.1.3. Das Paketdepot Experimental

Das Archiv von Paketen in Experimental ist auf allen Debian-Spiegelservern vorhanden und enthält Pakete, die aufgrund ihrer nicht den Standards entsprechenden Qualität noch nicht in Unstable sind – oft sind es Entwicklerversionen oder Vorab-Versionen (Alpha, Beta, Veröffentlichungskandidat…). Ein Paket kann auch dorthin verschoben werden, wenn Änderungen Probleme verursachen können. Der Paketbetreuer versucht diese Probleme dann mit der Hilfe erfahrener Benutzter, die mit problembehafteter Software umgehen können, aufzuspüren. Nach dieser ersten Stufe wird das Paket nach Unstable verschoben, wo es ein viel größeres Publikum erreicht und dadurch viel gründlicher getestet wird.
Generell wird Experimental von Benutzern genutzt, denen es nichts ausmacht, wenn ihr System beschädigt wird und sie es reparieren müssen. Diese Distribution ermöglicht es, ein Paket einzubinden, das ein Benutzer ausprobieren möchte oder weil er es benötigt. Genau das ist die Vorgehensweise von Debian, da das Hinzufügen dieser in APTs sources.list-Datei nicht dazu führt, dass diese Pakete systematisch benutzt werden. Die hinzuzufügende Zeile ist:
deb http://ftp.debian.org/debian experimental main contrib non-free

6.1.2. Inoffizielle Resourcen: apt-get.org und mentors.debian.net

Es gibt zahlreiche inoffizielle Quellen von Debian-Paketen, aufgesetzt von fortgeschrittenen Benutzern, die Software neu kompiliert haben, von Programmierern, die ihre Werke allen verfügbar machen wollen und sogar von Debian-Entwicklern, die Vorab-Versionen ihrer Pakete online anbieten. Um diese alternativen Quellen einfacher zu finden, wurde eine Website eingerichtet. Sie enthält eine beeindruckende Anzahl von Debian-Paketquellen, die direkt in sources.list-Dateien integriert werden können. Aber hüten Sie sich davor, willkürlich Pakete hinzuzufügen: Jede Quelle wurde für eine bestimmte Debian-Version entworfen (die, die benutzt wurde, um die entsprechenden Pakete zu kompilieren); jeder Benutzer sollte darauf achten, die Stimmigkeit zwischen seinem System und dem, was er zur Installation auswählt, zu wahren. http://www.apt-get.org/
Die Adresse mentors.debian.net ist auch interessant, weil sie Pakete zweier Entwicklergruppen sammelt: Die von Kanditaten für den Status eines offiziellen Debian-Entwicklers und die von Freiwilligen, die Debian-Pakete erstellen wollen, ohne durch den Integrationsprozess zu gehen. Diese Pakete werden ohne jegliche Garantie hinsichtlich ihrer Qualität zur Verfügung gestellt; achten Sie darauf, die Herkunft und Integrität zu prüfen und sie dann zu testen, bevor Sie erwägen, sie produktiv einzusetzen.
Ein Paket zu installieren bedeutet, dessen Urheber Root-Rechte zu gewähren, da dieser über den Inhalt der Einrichtungsskripte entscheidet, die unter der Paket-Identität ausgeführt werden. Offizielle Debian-Pakete werden von Freiwilligen erstellt, die ausgewählt und überprüft wurden, und die ihre Pakete signieren können, so dass deren Herkunft und Integrität überprüft werden kann.
Seien Sie generell misstrauisch bei einem Paket, dessen Herkunft Sie nicht kennen und das nicht auf einem der offiziellen Debian-Servern beherbergt ist: Erwägen Sie in welchem Maß Sie dem Ersteller vertrauen können, und überprüfen Sie die Integrität des Pakets. http://mentors.debian.net/