2.4 Update von Debian 3.0 (Woody) auf 3.1 (Sarge)

2.4.1 Mögliche Probleme beim Upgrade von Woody auf Sarge
2.4.2 Aktualisieren des Kernels

Ein Upgrade von Debian „Woody“ auf „Sarge“ ist ohne größere Probleme möglich. Da es jedoch bereits mit dem Release von „Woody“ sehr vielfältige Möglichkeiten der Konfiguration von APT gibt, sind einige Vorarbeiten sinnvoll, um ein erfolgreiches Upgrade sicherzustellen.

Da mit der Version 3.1 von Debian die Unterstützung für i386er-Prozessoren entfallen ist, besteht keine Möglichkeit, ein solches, noch unter 3.0 laufendes, System auf die Version 3.1 zu aktualisieren. Dies betrifft nicht Prozessoren des Typs i486 oder höher.

Ebenfalls entfallen ist der komplette Zweig „non-US“ auf den Debian Servern. Die Pakete wurden in den „main“-Zweig der Distribution integriert. Einträge in der Datei /etc/apt/sources.list, die noch einen Verweis auf „non-US“ enthalten, müssen angepasst werden.

Zu prüfen ist, ob APT auf der „Woody“ Installation so konfiguriert wurde, dass bestimmte Pakete aus einem anderen Release als „Stable“, also zum Beispiel Pakete aus „testing“, installiert werden. Diese „Pinning“ genannte Methode wird in der Datei /etc/apt/preferences konfiguriert. Weitere Informationen zum „Pinning“ finden sich im Abschnitt APT Pinning.

Zu prüfen ist ebenfalls, ob das Woody System fehlerfrei installiert wurde oder ob Pakete nur teilweise installiert wurden. Dies kann mit dem dpkg --audit geschehen. Sinnvoll ist es auch, alle Pakete, die auf „hold“ gesetzt wurden, zu aktualisieren, da solche Pakete - falls diese essenziell wichtig für das Upgrade sind - zu einem Fehler führen würden. Die Ausgabe von dpkg -l zeigt auf „hold“ gesetzte Pakete ebenfalls an, ersichtlich durch ein „h“ in der ersten Spalte. Wie ein Paket in den Status „hold“ versetzt wird, ist im Abschnitt dpkg - hold beschrieben.

Um dieses Upgrade durchzuführen, werden einfach die gewünschten Installationsquellen in die Datei /etc/apt/sources.list eingetragen. Hierbei sollte darauf geachtet werden, dass alle Einträge auch das gewünschte Release von Debian bezeichnen, in diesem Fall „Sarge“ bzw. „stable“.

Im nächsten Schritt sollte das Paket apt aktualisiert werden. Der Grund hierfür: Je nach Anzahl und Kombination der auf dem System installierten Pakete kann es zu Problemen mit den Abhängigkeiten zwischen den Paketen kommen, die von der älteren Version des Programmes apt-get aus „Woody“ nicht sinnvoll behandelt werden können.

Für das Durchführen des eigentlichen Upgrades wird die Verwendung von Aptitude empfohlen. Aptitude trifft sicherere Entscheidungen darüber, welche Pakete aktualisiert werden müssen.

Aufzeichnen von Aktionen

Mit dem Programm script können komplette Arbeitsschritte dokumentiert und so eventuell aufgetretene Probleme später nachvollzogen werden. Dies ist insbesondere bei einer so umfangreichen Aktion wie einem kompletten Upgrade einer Debian Installation sinnvoll. Um die Aufzeichnung zu starten, wird script wie folgt aufgerufen:

script -a ~/upgrade-to-sarge.script
	    

Die Informationen werden in der Datei upgrade-to-sarge.script im Heimatverzeichnis abgelegt. Es sollte darauf geachtet werden, nicht in das Verzeichnis /tmp/ zu schreiben, da dies bei jedem Systemstart gelöscht wird.

Sind alle oben beschriebenen Schritte durchgeführt und überprüft worden, so kann die Liste der verfügbaren Pakete aktualisiert werden. Dies geschieht mit dem Kommando

aptitude update
	    

Ist das Paket doc-base installiert (dies kann mit dem Kommando dpkg -l doc-base überprüft werden), so muss dieses zunächst mittels aptitude install doc-base aktualisiert werden. Danach kann das gesamte System mit dem Kommando aptitude -f --with-recommends dist-upgrade auf den neuesten Stand gebracht werden. Aptitude sorgt dafür, dass alle Pakete mit den notwendigen Abhängigkeiten korrekt aufgelöst und installiert werden. Wenn nötig, werden zusätzliche Pakete installiert und alte, überflüssige Pakete entfernt (beispielsweise console-tools-libs).

2.4.1 Mögliche Probleme beim Upgrade von Woody auf Sarge

Die Fehlermeldung E: Dynamic MMap ran out of room bedeutet, dass der Cache für das Paketmanagement zu klein bemessen ist. Dies tritt auf, wenn sehr viele Einträge in der Datei /etc/apt/sources.list vorhanden sind. Hier sollten die nicht benötigten Einträge auskommentiert werden. Alternativ kann auch die Variable APT::Cache-Limit in der APT Konfigurationsdatei /etc/apt/apt.conf auf einen größeren Wert gesetzt werden. Ist dieser Eintrag nicht vorhanden, so kann er mit dem Kommando

echo 'APT::Cache-Limit "12500000";' >> /etc/apt/apt.conf
	    

erzeugt werden.

In seltenen Fällen kann es notwendig sein, ein essenziell wichtiges Paket kurzzeitig zu löschen, damit ein anderes Paket installiert werden kann. Dies kann erreicht werden, indem die Option -o APT::Force-LoopBreak=1 dem Programm aptitude auf der Kommandozeile mit übergeben wird.

2.4.2 Aktualisieren des Kernels

Bei allen bisher beschriebenen Upgrades wurde der installierte Kernel nicht aktualisiert. Dies muss von Hand angestoßen werden und erfordert in jedem Fall einen Neustart des Systems. Debian Sarge nutzt einen Kernel der Version 2.4.x. Ein neuerer Kernel (2.6.x) sollte nicht im Rahmen des zuvor beschriebenen Upgrades von Woody zu Sarge installiert werden. Dies sollte immer als gesonderter Schritt durchgeführt werden, nachdem alle anderen Pakete erfolgreich aktualisert wurden. Eine Übersicht der verfügbaren Debian Kernel-Pakete ist mit dem Kommando apt-cache search ^linux-image zu erhalten. Der gewünschte Kernel kann dann mittels aptitude install installiert werden.

Das Installationssystem von Debian 3.0 „Woody“ und alle folgenden Releases von „Woody“ verwendeten noch keine Kernel-Pakete. Mit dem Release von Debian „Sarge“ ist es möglich, virtuelle Kernel-Pakete zu nutzen, die aktualisiert werden. So kann das System, auch hinsichtlich des Kernels, mit den Debian Werkzeugen zur Paketverwaltung auf dem aktuellen Stand gehalten werden.