Kapitel 6. Wartung und Aktualisierung: Die APT-Tools
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:
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:
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/