Kapitel 4. Upgrade von Debian 7 (Wheezy)

Inhaltsverzeichnis

4.1. Vorbereiten des Upgrades
4.1.1. Sichern aller Daten und Konfigurationsinformationen
4.1.2. Die Benutzer vorab informieren
4.1.3. Vorbereitung auf die Deaktivierung von Diensten
4.1.4. Vorbereitungen für eine Systemwiederherstellung
4.1.5. Vorbereiten einer sicheren Umgebung für das Upgrade
4.2. Den Systemstatus überprüfen
4.2.1. Noch ausstehende Aktionen im Paketmanager prüfen
4.2.2. APT Pinning deaktivieren
4.2.3. Paketstatus überprüfen
4.2.4. Der Bereich für vorgeschlagene Aktualisierungen (proposed-updates)
4.2.5. Inoffizielle Quellen und Backports
4.3. Die Quellen für APT vorbereiten
4.3.1. APT-Internet-Quellen hinzufügen
4.3.2. APT-Quellen für einen lokalen Spiegel hinzufügen
4.3.3. APT-Quellen für optische Medien hinzufügen
4.4. Upgrades von Paketen durchführen
4.4.1. Aufzeichnung der Sitzung
4.4.2. Aktualisieren der Paketliste
4.4.3. Sicherstellen, dass genügend Speicherplatz für das Upgrade zur Verfügung steht
4.4.4. Minimales System-Upgrade
4.4.5. Upgrade des Systems
4.5. Mögliche Probleme während des Upgrades
4.5.1. Dist-upgrade schlägt fehl mit »Could not perform immediate configuration«
4.5.2. Zu erwartende Paketentfernungen
4.5.3. Conflicts- oder Pre-Depends-Schleifen
4.5.4. Dateikonflikte
4.5.5. Konfigurationsänderungen
4.5.6. Ändern der aktuellen Sitzung auf die Konsole
4.5.7. Besondere Sorgfalt bei speziellen Paketen
4.6. Upgrade des Kernels und zugehöriger Pakete
4.6.1. Das Kernel-Metapaket installieren
4.6.2. Probleme mit dem Timing beim Booten (waiting for root device)
4.7. Dinge, die vor dem Neustart erledigt werden sollten
4.7.1. Purging removed packages
4.8. Vorbereiten auf die nächste Veröffentlichung
4.9. Missbilligte Komponenten
4.10. Veraltete Pakete
4.10.1. Dummy-Pakete

4.1. Vorbereiten des Upgrades

Wir empfehlen, dass Sie vor dem Upgrade auch die Informationen in Kapitel 5, Dinge, die Sie über Jessie wissen sollten lesen. Das Kapitel behandelt mögliche Probleme, die mit dem Upgrade-Prozess nicht direkt zusammenhängen, aber dennoch vor dem Upgrade für Sie wichtig sein könnten.

4.1.1. Sichern aller Daten und Konfigurationsinformationen

Wir empfehlen Ihnen nachdrücklich, vor dem Upgrade Ihres Systems ein komplettes Backup durchzuführen oder zumindest alle Daten und Konfigurationsinformationen zu sichern, die Sie nicht verlieren möchten. Die Upgrade-Werkzeuge und der zugehörige Prozess sind recht zuverlässig, aber ein Versagen der Hardware während des Upgrades könnte zu einem schwer beschädigten System führen.

Am wichtigsten für das Backup sind die Inhalte von /etc, /var/lib/dpkg, /var/lib/apt/extended_states und die Ausgabe von dpkg --get-selections "*" (die Anführungszeichen sind wichtig). Falls Sie aptitude verwenden, um die Pakete auf Ihrem System zu verwalten, sollten Sie auch /var/lib/aptitude/pkgstates sichern.

Der Upgrade-Prozess ändert nichts im Verzeichnisbaum /home. Allerdings ist bekannt, dass einige Anwendungen (z.B. Teile der Mozilla-Suite und die GNOME- und KDE-Desktop-Umgebungen) existierende Benutzereinstellungen mit neuen Vorgaben überschreiben, wenn eine neue Version der Anwendung das erste Mal von einem Benutzer gestartet wird. Zur Vorsicht sollten Sie überlegen, die versteckten Dateien und Verzeichnisse (Dateien und Verzeichnisse, die mit einem Punkt beginnen, auch dotfiles genannt) in den Home-Verzeichnissen der Benutzer zu sichern. Dieses Backup könnte Ihnen dabei helfen, die alten Einstellungen wiederherzustellen. Auch sollten Sie die Benutzer des Systems darüber informieren.

Jede Paketinstallation muss mit den Rechten des Superusers ausgeführt werden, melden Sie sich daher als root an oder verwenden Sie su oder sudo, um die notwendigen Rechte zu erlangen.

Für das Upgrade gibt es ein paar Voraussetzungen; Sie sollten diese überprüfen, bevor Sie das Upgrade durchführen.

4.1.2. Die Benutzer vorab informieren

Es empfiehlt sich, alle Benutzer vor dem geplanten Upgrade zu informieren, auch wenn Benutzer, die über ssh auf Ihr System zugreifen, wenig von dem Upgrade mitbekommen sollten und es ihnen möglich sein sollte, weiterzuarbeiten.

Falls Sie zusätzliche Vorsichtsmaßnahmen ergreifen möchten, sichern Sie die Partition /home vor dem Upgrade oder lösen Sie diese Einbindung mit umount.

Sie müssen beim Upgrade auf Jessie auch ein Kernel-Upgrade durchführen, daher wird ein Systemneustart notwendig sein. Typischerweise wird dieser stattfinden, nachdem das Upgrade abgeschlossen ist.

4.1.3. Vorbereitung auf die Deaktivierung von Diensten

Es gibt möglicherweise vom System angebotene Dienste, die Paketen, für die ein Upgrade ansteht, zugeordnet sind. Falls das der Fall ist, beachten Sie bitte, dass diese Dienste während des Upgrades gestoppt werden, wenn die ihnen zugeordneten Pakete ersetzt und konfiguriert werden. Während dieser Zeit werden diese Dienste nicht verfügbar sein.

Die exakte Dauer, für die die Dienste abgeschaltet sind, variiert abhängig von der Anzahl der Pakete, die im System aktualisiert werden und enthält auch die Zeit, die der Systemadministrator benötigt, um Konfigurationsfragen von verschiedenen Paket-Upgrades zu beantworten. Beachten Sie, dass eine hohe Wahrscheinlichkeit für die Nichtverfügbarkeit von Diensten über eine erhebliche Zeitdauer besteht, wenn der Upgrade-Prozess unbeaufsichtigt läuft und das System eine Bedienereingabe während des Prozesses erfordert[1].

Wenn das System, das aktualisiert wird, kritische Dienste für Ihre Nutzer oder für das Netzwerk bereitstellt[2], können Sie die Zeit, während der der Dienst abgeschaltet ist, reduzieren, indem Sie ein minimales System-Upgrade durchführen (wie in Abschnitt 4.4.4, „Minimales System-Upgrade“ beschrieben), gefolgt von einem Kernel-Upgrade und einem Reboot und schließlich dem Upgrade der Pakete, denen Ihre kritischen Dienste zugeordnet sind. Aktualisieren Sie diese Pakete, bevor Sie das eigentliche vollständige Upgrade durchführen, das in Abschnitt 4.4.5, „Upgrade des Systems“ beschrieben ist. So stellen Sie sicher, dass die kritischen Dienste während des ganzen vollständigen Upgrades laufen und verfügbar sind, so dass der Zeitraum, während dem die Dienste abgeschaltet sind, insgesamt reduziert ist.

4.1.4. Vorbereitungen für eine Systemwiederherstellung

Obwohl Debian versucht sicherzustellen, dass Ihr System immer startfähig bleibt, gibt es immer die Möglichkeit, dass Sie beim Neustart des Systems nach dem Upgrade Probleme feststellen. Bekannte mögliche Probleme sind in diesem und den nächsten Kapiteln dieser Veröffentlichungshinweise dokumentiert.

Aus diesem Grund ist es sinnvoll, sicherzustellen, dass Sie die Möglichkeit haben, Ihr System wieder zum Laufen zu bringen, falls der Start fehlschlagen sollte oder (bei fernverwalteten Systemen) der Aufbau der Netzwerkverbindung nicht erfolgreich sein sollte.

Falls Sie das Upgrade aus der Ferne über eine ssh-Verbindung durchführen, wird empfohlen, dass Sie die nötigen Vorkehrungen treffen, um den Server über eine serielle Terminalverbindung aus der Ferne erreichen zu können. Es besteht die Möglichkeit, dass Sie nach dem Kernel-Upgrade und anschließenden Neustart die Systemkonfiguration über eine lokale Konsole korrigieren müssen. Auch könnte es sein, dass Sie das System über eine lokale Konsole wiederherstellen müssen, wenn es in der Mitte des Upgrade-Prozesses versehentlich neu gebootet wird.

Am naheliegendsten ist es in einem solchen Fall, zu versuchen, das System mit Ihrem alten Kernel zu starten. Es kann allerdings nicht garantiert werden, dass dies funktioniert.

Falls dies fehlschlägt, benötigen Sie eine alternative Möglichkeit, Ihr System zu starten und zu reparieren. Eine Möglichkeit ist, ein spezielles Rettungs-Image oder eine Linux-Live-CD zu verwenden. Nachdem Sie davon gebootet haben, sollten Sie die Wurzel Ihres Dateisystems (/) einbinden und ein chroot darauf ausführen, um das Problem zu untersuchen und zu beheben.

Eine andere von uns empfohlene Option ist die Verwendung des Rettungsmodus des Jessie-Debian-Installers. Der Vorteil der Verwendung des Installers besteht darin, dass Sie aus den vielen Installationsmethoden diejenige aussuchen können, die am besten für Sie passt. Für weitere Informationen lesen Sie bitte den Abschnitt Ein kaputtes System reparieren in Kapitel 8 der Installationsanleitung und die FAQ des Debian-Installers.

4.1.4.1. Shell zur Fehleranalyse während des Bootens mit Initrd

Das initramfs-tools-Paket integriert eine Shell zur Fehleranalyse[3] in die Initrds, die es erzeugt. Falls die Initrd beispielsweise nicht in der Lage ist, die Wurzel Ihres Dateisystems (/) einzubinden, wird Ihnen diese Debug-Shell präsentiert, in der die grundlegenden Befehle vorhanden sind, um das Problem zu ermitteln und möglicherweise zu beheben.

Folgende wesentliche Dinge sollten Sie prüfen: Vorhandensein der richtigen Gerätedateien in /dev, welche Module geladen sind (cat /proc/modules) und Fehler beim Laden von Treibern in der Ausgabe von dmesg. Die Ausgabe von dmesg wird Ihnen auch zeigen, welche Gerätedateien welchen Festplatten zugeordnet wurden; Sie sollten das mit der Ausgabe von echo $ROOT vergleichen, um sicherzustellen, dass die Wurzel des Dateisystems (/) auf dem erwarteten Gerät liegt.

Falls Sie das Problem beheben können, geben Sie exit ein, um die Debug-Shell zu beenden und mit dem Boot-Vorgang an der Fehlerstelle fortzufahren. Natürlich müssen Sie auch das zu Grunde liegende Problem beheben und die Initrd neu erzeugen, damit der Systemstart nicht beim nächsten Mal wieder fehlschlägt.

4.1.5. Vorbereiten einer sicheren Umgebung für das Upgrade

Das Distributions-Upgrade sollte entweder lokal von einer virtuellen Konsole im Textmodus (oder von einem direkt angebundenen seriellen Terminal) oder aus der Ferne über eine ssh-Verbindung erfolgen.

[Wichtig]Wichtig

Wenn Sie VPN-Dienste (wie zum Beispiel tinc) verwenden, könnten diese während des Upgrades unter Umständen eine Zeit lang nicht verfügbar sein. Bitte lesen Sie Abschnitt 4.1.3, „Vorbereitung auf die Deaktivierung von Diensten“.

Für zusätzliche Sicherheit sollten Sie beim Upgrade aus der Ferne den Upgrade-Prozess in einer virtuellen Konsole des Programms screen durchführen, da damit bei möglichen Verbindungsabbrüchen die Verbindung wieder sicher hergestellt werden kann und der Upgrade-Prozess somit nicht fehlschlägt.

[Wichtig]Wichtig

Sie sollten das Upgrade nicht mit telnet, rlogin, rsh durchführen bzw. bei lokalen Upgrades nicht in einer X-Sitzung, die von xdm, gdm, kdm usw. verwaltet wird. Da diese Dienste während des Upgrades möglicherweise beendet werden, könnte dies dazu führen, dass auf das System kein Zugriff mehr möglich ist und somit das Upgrade nicht fertiggestellt werden kann. Von der Nutzung der GNOME-Applikation update-manager für Upgrades auf neue Veröffentlichungen wird dringend abgeraten, da dieses Programm darauf angewiesen ist, dass die Desktop-Sitzung währendddessen nicht abgebrochen wird.

TODO: surely gdm/kdm are sane?
(vorlon) haha, no, gdm is not; I had that thought, and tested a gdm
         restart on my live session ;)

4.2. Den Systemstatus überprüfen

Der in diesem Kapitel beschriebene Upgrade-Prozess geht davon aus, dass das zu aktualisierende System ein reines Wheezy-System ohne Softwarepakete Dritter ist. Um den Upgrade-Prozess möglichst zuverlässig zu gestalten, sollten Sie überlegen, eventuell installierte Softwarepakete Dritter vor Beginn des Upgrades von Ihrem System zu entfernen.

Direct upgrades from Debian releases older than 7 (wheezy) are not supported. Please follow the instructions in the Release Notes for Debian 7 to upgrade to 7 first.

Diese Anleitung geht davon aus, dass Ihr System auf die neueste Zwischenveröffentlichung von Wheezy aktualisiert wurde. Falls dies nicht der Fall sein sollte oder Sie sich unsicher sind, folgen Sie den Anweisungen in Abschnitt A.1, „Upgrade Ihres Wheezy-Systems“.

4.2.1. Noch ausstehende Aktionen im Paketmanager prüfen

Manchmal führt die Verwendung von apt-get statt aptitude für die Paketinstallation dazu, dass aptitude ein Paket für unbenutzt hält und es zur Entfernung einplant. Grundsätzlich sollten Sie sicherstellen, dass Ihr System vollständig aktuell und sauber ist, bevor Sie mit dem Upgrade fortfahren.

Deshalb sollten Sie kontrollieren, ob noch ausstehende Aktionen im Paketmanager aptitude vorhanden sind. Falls ein Paket im Paketmanager zum Entfernen oder Aktualisieren vorgemerkt ist, könnte dies den Upgrade-Prozess negativ beeinflussen. Beachten Sie, dass Sie eine solche Situation nur korrigieren können, falls Ihre sources.list noch auf wheezy und nicht auf stable oder jessie verweist; siehe dazu Abschnitt A.2, „Überprüfen Ihrer Paketquellen“.

Dann sollten Sie aptitude im visuellen Modus starten und g drücken, um diese Begutachtung zu beginnen. Falls irgendwelche Aktionen angezeigt werden, sollten Sie diese kontrollieren und entweder rückgängig machen/beheben oder die empfohlenen Vorgänge ausführen. Sind keine Aktionen vorgesehen, wird folgende Nachricht angezeigt: Es wurden keine Pakete zum Installieren, Entfernen oder Aktualisieren ausgewählt..

4.2.2. APT Pinning deaktivieren

Falls Sie APT so konfiguriert haben, dass bestimmte Pakete aus einer anderen Debian-Suite als Stable (z.B. aus Testing) installiert werden, müssen Sie unter Umständen Ihre APT-Pinning-Konfiguration (in /etc/apt/preferences und /etc/apt/preferences.d/ gespeichert) ändern, um das Upgrade der Pakete aus der neuen Stable-Veröffentlichung zu erlauben. Weitere Informationen zu APT Pinning finden Sie in apt_preferences(5).

4.2.3. Paketstatus überprüfen

Unabhängig von der Upgrade-Methode wird empfohlen, dass Sie zuerst überprüfen, ob alle Pakete in einem Status sind, der zum Upgrade geeignet ist. Der folgende Befehl wird Ihnen alle Pakete anzeigen, die im Status halb-installiert oder Konfiguration-fehlgeschlagen sind, und solche mit Fehler-Status:

# dpkg --audit

Sie können auch den Status aller Pakete Ihres Systems mittels aptitude oder Befehlen der folgenden Form überprüfen:

# dpkg -l | pager

oder

# dpkg --get-selections "*" > ~/curr-pkgs.txt

Es ist erstrebenswert, alle hold-Markierungen (halten; Markierung, dass ein Paket in dem Zustand belassen werden soll, in dem es ist; es würde nicht aktualisiert) vor dem Upgrade zu entfernen. Wenn irgendein Paket, das für das Upgrade unverzichtbar ist, auf hold steht, schlägt das Upgrade fehl.

Beachten Sie, dass aptitude verglichen mit apt-get oder dselect eine andere Methode verwendet, um Pakete als auf hold gesetzt zu registrieren. Sie können Pakete, für die die hold-Markierung gesetzt ist, mit aptitude identifizieren, indem Sie diesen Befehl verwenden:

# aptitude search "~ahold" 

Um Pakete, die für apt-get auf hold gesetzt worden waren, zu identifizieren, sollten Sie dies verwenden:

# dpkg --get-selections | grep 'hold$'

Falls Sie ein Paket lokal verändert und neu kompiliert haben, und ihm dabei weder einen anderen Namen gegeben noch eine Epoche in die Versionsnummer eingefügt haben, müssen Sie es auf hold setzen, um zu verhindern, dass ein Upgrade für dieses Paket durchgeführt und es damit überschrieben wird.

Der hold-Paketstatus für apt-get kann mit folgenden Befehlen geändert werden: hold-Status setzen:

# echo package_name hold | dpkg --set-selections

hold-Status löschen: ersetzen Sie hold durch install.

Falls etwas korrigiert werden muss, sorgen Sie am besten dafür, dass sources.list noch auf wheezy verweist, wie dies in Abschnitt A.2, „Überprüfen Ihrer Paketquellen“ erklärt ist.

4.2.4. Der Bereich für vorgeschlagene Aktualisierungen (proposed-updates)

Wenn Sie proposed-updates in Ihrer /etc/apt/sources.list-Datei aufgeführt haben, sollten Sie das entfernen, bevor Sie versuchen, ein Upgrade Ihres Systems durchzuführen. Dies ist eine Vorsichtsmaßnahme, um die Zahl möglicher Konflikte zu reduzieren.

4.2.5. Inoffizielle Quellen und Backports

Falls auf Ihrem System Debian-fremde Pakete installiert sind, sollten Sie wissen, dass diese während des Upgrades aufgrund von Konflikten in den Abhängigkeiten entfernt werden könnten. Falls diese Pakete installiert wurden, indem ein zusätzliches Paketarchiv in Ihrer /etc/apt/sources.list hinzugefügt wurde, sollten Sie überprüfen, ob das Archiv auch für Jessie übersetzte Pakete anbietet und die Quellzeile gleichzeitig mit der Quellzeile für die Debian-Pakete ändern.

Einige Benutzer haben inoffizielle rückportierte neuere Versionen von Paketen aus Debian auf ihrem Wheezy-System installiert. Diese Pakete werden wahrscheinlich während des Upgrades zu Problemen führen, da Dateikonflikte auftreten können[4]. Abschnitt 4.5, „Mögliche Probleme während des Upgrades“ enthält Informationen, wie Sie mit Dateikonflikten umgehen, falls diese auftreten.

4.3. Die Quellen für APT vorbereiten

Bevor Sie das Upgrade beginnen, müssen Sie die apt-Konfigurationsdatei für die Paketlisten /etc/apt/sources.list einrichten.

apt wird alle Pakete berücksichtigen, die über eine deb-Zeile gefunden werden können und das Paket mit der höchsten Versionsnummer installieren, wobei die Priorität auf die erste Zeile in der Datei gelegt wird (daher würden Sie bei der Existenz mehrerer Quellen typischerweise zuerst die Festplatte, dann CD-ROMs und schließlich HTTP/FTP-Archivspiegel angeben).

Eine Veröffentlichung kann sowohl mit ihrem Codenamen (z.B. wheezy, jessie) als auch mit ihrem Statusnamen (d.h. oldstable, stable, testing, unstable) benannt werden. Die Verwendung des Codenamens hat den Vorteil, dass Sie nie von neueren Veröffentlichungen überrascht werden, und wird daher hier verwandt. Natürlich bedeutet dies, dass Sie selbst auf Veröffentlichungsankündigungen achten müssen. Falls Sie stattdessen den Statusnamen verwenden, werden Sie nur eine große Menge an Aktualisierungen für Pakete sehen, wenn eine Veröffentlichung stattgefunden hat.

4.3.1. APT-Internet-Quellen hinzufügen

Die Konfiguration ist standardmäßig so eingerichtet, dass Sie von den Haupt-Internetservern von Debian installieren, aber Sie können /etc/apt/sources.list bearbeiten, um andere Spiegel zu verwenden, bevorzugt solche, die netztopologisch nahe bei Ihnen liegen.

Adressen von HTTP- und FTP-Spiegeln können Sie auf https://www.debian.org/distrib/ftplist finden (suchen Sie nach dem Abschnitt Liste von Debian-Spiegeln). HTTP-Spiegel sind im Allgemeinen schneller als FTP-Spiegel.

Im Beispiel nehmen wir an, dass der für Sie am nächsten liegende Spiegel http://mirrors.kernel.org sei. Wenn Sie sich den Spiegel mit einem Webbrowser oder einem FTP-Programm anschauen, werden Sie bemerken, dass die Hauptverzeichnisse wie folgt organisiert sind:

http://mirrors.kernel.org/debian/dists/jessie/main/binary-armhf/...
http://mirrors.kernel.org/debian/dists/jessie/contrib/binary-armhf/...

Um diesen Spiegel mit apt zu verwenden, müssen Sie die folgende Zeile zu Ihrer Datei sources.list hinzufügen:

deb http://mirrors.kernel.org/debian jessie main contrib

Beachten Sie, dass das dists implizit hinzugefügt wird und dass Argumente nach dem Namen der Veröffentlichung verwendet werden, um den Pfad aufzufächern, so dass er in mehrere unterschiedliche Verzeichnisse verweist.

Nachdem Sie neue Quellen hinzugefügt haben, deaktivieren Sie die bisher existierenden deb-Zeilen in der Datei sources.list, indem Sie eine Raute (#) am Zeilenanfang einfügen.

4.3.2. APT-Quellen für einen lokalen Spiegel hinzufügen

Statt HTTP- oder FTP-Paketspiegel zu verwenden, können Sie auch Ihre /etc/apt/sources.list anpassen, um einen Spiegel auf einer lokalen Platte zu verwenden (die möglicherweise über NFS eingebunden ist).

Beispielsweise könnte Ihr Paketspiegel unter /var/ftp/debian/ liegen und über die folgenden Hauptverzeichnisse verfügen:

/var/ftp/debian/dists/jessie/main/binary-armhf/...
/var/ftp/debian/dists/jessie/contrib/binary-armhf/...

Um diesen Spiegel mit apt zu verwenden, fügen Sie die folgende Zeile zu Ihrer Datei sources.list hinzu:

deb file:/var/ftp/debian jessie main contrib

Beachten Sie, dass das dists implizit hinzugefügt wird und dass Argumente nach dem Namen der Veröffentlichung verwendet werden, um den Pfad aufzufächern, so dass er in mehrere unterschiedliche Verzeichnisse verweist.

Nachdem Sie neue Quellen hinzugefügt haben, deaktivieren Sie die bisher existierenden deb-Zeilen in der Datei sources.list, indem Sie eine Raute (#) am Zeilenanfang einfügen.

4.3.3. APT-Quellen für optische Medien hinzufügen

Falls Sie ausschließlich die CDs/DVDs/Blu-ray-Disks verwenden möchten, kommentieren Sie die existierenden deb-Zeilen in der /etc/apt/sources.list aus, indem Sie am Zeilenanfang eine Raute (#) anfügen.

Stellen Sie sicher, dass es eine Zeile in /etc/fstab gibt, die das Einbinden Ihres CD-ROM-Laufwerks unter /cdrom ermöglicht (der Einbindepunkt muss für apt-cdrom exakt /cdrom sein). Falls Ihr CD-ROM-Laufwerk beispielsweise /dev/scd0 ist, sollte /etc/fstab eine Zeile der folgenden Art enthalten:

/dev/scd0 /cdrom auto noauto,ro 0 0

Beachten Sie, dass es keine Leerzeichen zwischen den Wörtern noauto,ro im vierten Feld geben darf.

Um zu überprüfen, ob dies funktioniert, legen Sie eine CD/DVD ein und versuchen Sie, Folgendes auszuführen:

# mount /cdrom    # dies wird die CD/DVD am Einbindepunkt einbinden
# ls -alF /cdrom  # dies sollte Ihnen das Wurzelverzeichnis der CD/DVD anzeigen
# umount /cdrom   # dies wird die Einbindung der CD/DVD wieder aufheben

Führen Sie als nächstes für jede Binär-CD/-DVD, die Sie von Debian haben, den Befehl

# apt-cdrom add

aus, um die Daten der CD/DVD zu der APT-Datenbank hinzuzufügen.

4.4. Upgrades von Paketen durchführen

Die empfohlene Art, ein Upgrade von vorherigen Debian-Veröffentlichungen durchzuführen, ist die Verwendung des Paketverwaltungswerkzeuges apt-get. In früheren Veröffentlichungen wurde aptitude für diesen Zweck empfohlen, jedoch bieten neueste Versionen von apt-get vergleichbare Funktionalitäten und haben zusätzlich gezeigt, dass sie die gewünschten Upgrade-Resultate mit höherer Beständigkeit erreichen.

Vergessen Sie nicht, alle benötigten Partitionen (insbesondere / und /usr) zum Schreiben einzubinden. Verwenden Sie hierzu einen Befehl der Art:

# mount -o remount,rw /mountpoint

Als nächstes sollten Sie noch einmal überprüfen, dass die Quelleinträge für APT (in /etc/apt/sources.list) sich entweder auf jessie oder auf stable beziehen. Es sollte keine Quelleinträge geben, die auf wheezy verweisen.

[Anmerkung]Anmerkung

Quellzeilen für eine CD-ROM könnten sich eventuell auf unstable beziehen; dies mag zwar verwirrend erscheinen, Sie sollten dies jedoch nicht ändern.

4.4.1. Aufzeichnung der Sitzung

Es wird nachdrücklich empfohlen, dass Sie das Programm /usr/bin/script verwenden, um einen Mitschnitt der Upgrade-Sitzung zu erstellen. Falls dann ein Problem auftritt, haben Sie ein exaktes Protokoll der Ereignisse und können - falls notwendig - genaue Informationen in einem Fehlerbericht angeben. Um die Aufzeichnung zu beginnen, geben Sie

# script -t 2>~/upgrade-jessiestep.time -a ~/upgrade-jessiestep.script

oder vergleichbares ein. Falls Sie das Script erneut starten müssen (z.B. aufgrund eines Systemneustarts), verwenden Sie einen anderen Wert für step, um darzustellen, welchen Schritt des Upgrades Sie gerade aufzeichnen. Legen Sie die Mitschnittdatei nicht in einem temporären Verzeichnis wie /tmp oder /var/tmp ab (Dateien in diesen Verzeichnissen könnten während des Upgrades oder eines Systemstarts gelöscht werden).

Der Mitschnitt erlaubt es Ihnen auch, die Informationen durchzuschauen, die bereits aus dem Bildschirm herausgelaufen sind. Wenn Sie sich auf der System-Konsole befinden, schalten Sie auf VT2 um (mit Alt+F2) und verwenden Sie nach dem Anmelden less -R ~root/upgrade-jessie.script, um die Datei durchzuschauen.

Nach Beendigung des Upgrades können Sie script beenden, indem Sie exit an der Eingabeaufforderung eingeben.

TODO: (jfs) Could mention the script I provided in #400725 which is useful if
you have not dumped the timing file

Falls Sie den Schalter -t für script verwendet haben, können Sie das Programm scriptreplay zum Abspielen der gesamten Sitzung verwenden:

# scriptreplay ~/upgrade-jessie.time ~/upgrade-jessie.script

4.4.2. Aktualisieren der Paketliste

Zuerst muss die Liste der verfügbaren Pakete für die neue Veröffentlichung abgerufen werden. Dies erledigen Sie mit dem folgenden Befehl:

# apt-get update

4.4.3. Sicherstellen, dass genügend Speicherplatz für das Upgrade zur Verfügung steht

Sie müssen vor dem Upgrade sicherstellen, dass Sie genügend Platz auf Ihrer Festplatte verfügbar haben, wenn Sie wie in Abschnitt 4.4.5, „Upgrade des Systems“ beschrieben ein Upgrade des kompletten Systems starten. Als erstes wird jedes Paket, das zur Installation benötigt wird und über das Netz heruntergeladen werden muss, in /var/cache/apt/archives gespeichert (bzw. während des Downloads im Unterverzeichnis partial/). Sie müssen also sicherstellen, dass Sie auf der Partition, die /var/ beinhaltet, genügend Platz haben, um temporär alle Pakete, die installiert werden sollen, herunterladen zu können. Nach dem Download benötigen Sie möglicherweise mehr Platz in anderen Partitionen, sowohl um die zu aktualisierenden Pakete zu installieren (diese könnten größere Binärdateien oder zusätzliche Daten enthalten) als auch um Pakete zu installieren, die neu hinzukommen. Falls Sie nicht genügend freien Speicherplatz bereithalten, bleibt vielleicht ein System mit einem unvollständigen Upgrade zurück, das unter Umständen nur schwer wiederbelebt werden kann.

apt-get kann Ihnen detaillierte Informationen über den Festplattenplatz anzeigen, der für die Installation benötigt wird. Bevor Sie das Upgrade ausführen, können Sie sich die ungefähren Werte durch folgenden Befehl anschauen:

# apt-get -o APT::Get::Trivial-Only=true dist-upgrade
[ ... ]
XXX aktualisiert, XXX neu installiert, XXX zu entfernen und XXX nicht aktualisiert.
Es müssen xxx.x MB an Archiven heruntergeladen werden. 
Nach dieser Operation werden xxx MB Plattenplatz zusätzlich benutzt.
[Anmerkung]Anmerkung

Das Ausführen dieses Befehls zu Beginn des Upgrade-Prozesses könnte einen Fehler ausgeben (die Gründe sind in den folgenden Abschnitten beschrieben). In diesem Fall müssen Sie mit der Ausführung des Befehls warten, bis Sie das minimale System-Upgrade (wie in Abschnitt 4.4.4, „Minimales System-Upgrade“ beschrieben) durchgeführt haben, bevor Sie diesen Befehl ausführen können, um den Platzbedarf abzuschätzen.

Falls Sie nicht genügend Platz für das Upgrade haben, wird apt-get Sie mit einer Meldung wie dieser warnen:

F: Sie haben nicht genug Platz in /var/cache/apt/archives/.

In dieser Situation müssen Sie vorher manuell Platz schaffen. Sie können:

  • Pakete löschen, die früher schon einmal für eine Installation heruntergeladen worden sind (in /var/cache/apt/archives). Durch das Leeren des Paket-Caches mit apt-get clean werden alle bereits heruntergeladenen Paketdateien gelöscht.

  • Vergessene Pakete entfernen. Wenn Sie aptitude oder apt-get verwendet haben, um Pakete in Wheezy manuell zu installieren, werden die Paketwerkzeuge dies registriert haben und können auch andere Pakete als unnötig markieren, die nur aufgrund von Abhängigkeiten installiert wurden und jetzt nicht mehr benötigt werden, weil ein Paket entfernt wurde. Sie werden keine Pakete zur Entfernung vormerken, die Sie manuell installiert haben. Um automatisch installierte und jetzt nicht mehr verwendete Pakete zu entfernen, führen Sie dies aus:

    # apt-get autoremove
    

    Sie können deborphan, debfoster oder cruft verwenden, um unnötige Pakete zu finden. Entfernen Sie nicht blind die Pakete, die von diesen Programmen ausgegeben werden, speziell wenn Sie Optionen mit aggressiven Nicht-Standard-Werten verwenden, die dafür bekannt sind, falsch-positive Meldungen zu erzeugen. Es wird dringend empfohlen, dass Sie die Pakete, die zum Entfernen vorgeschlagen werden, kontrollieren (bezüglich Inhalt, Größe und Beschreibung), bevor Sie sie entfernen.

  • Entfernen Sie Pakete, die viel Speicherplatz belegen und die aktuell nicht benötigt werden (Sie können sie nach dem Upgrade wieder installieren). Wenn Sie popularity-contest installiert haben, können Sie popcon-largest-unused verwenden, um die Pakete aufzulisten, die derzeit nicht verwendet werden und den meisten Platz verbrauchen. Um die Pakete ausfindig zu machen, die schlicht den meisten Festplattenspeicher in Anspruch nehmen, verwenden Sie dpigs (aus dem debian-goodies-Paket) oder wajig (führen Sie wajig size aus). Desweiteren können Sie diese Pakete auch mit aptitude finden. Starten Sie dazu aptitude im visuellen Modus, wählen Sie AnsichtenNeue flache Paketansicht, drücken Sie l und geben Sie ~i ein, drücken Sie dann S und geben Sie ~installsize ein. Nun wird Ihnen eine schöne Liste angezeigt, mit der Sie arbeiten können.

  • Entfernen von Übersetzungen und Standortanpassungsdateien aus dem System, falls diese nicht benötigt werden. Sie können das Paket localepurge installieren und so konfigurieren, dass nur einige ausgewählte Standortdateien (locales) im System verbleiben. Dies wird den unter /usr/share/locale benötigten Plattenplatz reduzieren.

  • System-Protokolldateien (die unter /var/log/ liegen) vorübergehend auf ein anderes System verschieben oder dauerhaft löschen.

  • Ein temporäres /var/cache/apt/archives verwenden: Sie können vorübergehend ein Cache-Verzeichnis auf einem anderen Dateisystem benutzen (USB-Speicher, provisorisch angeschlossene Festplatte, ein bereits anderweitig benutztes Dateisystem ...)

    [Anmerkung]Anmerkung

    Benutzen Sie jedoch kein per NFS eingebundenes Netzlaufwerk, da die Netzwerkverbindung während des Upgrades unterbrochen werden könnte.

    Falls Sie zum Beispiel eine USB-Festplatte haben, die in /media/usbkey eingebunden ist:

    1. entfernen Sie die Pakete, die unter Umständen bereits früher für Installationen heruntergeladen worden sind:

      # apt-get clean

    2. kopieren Sie das Verzeichnis /var/cache/apt/archives auf die USB-Festplatte:

      # cp -ax /var/cache/apt/archives /media/usbkey/

    3. binden Sie das temporäre Cache-Verzeichnis in dem vorhandenen ein:

      # mount --bind /media/usbkey/archives /var/cache/apt/archives

    4. stellen Sie nach dem Upgrade das ursprüngliche /var/cache/apt/archives-Verzeichnis wieder her:

      # umount /media/usbkey/archives

    5. entfernen Sie das verbleibende /media/usbkey/archives.

    Sie können das temporäre Cache-Verzeichnis auf jedem Dateisystem erstellen, das auf Ihrem System eingebunden ist.

  • Führen Sie ein minimales Upgrade (siehe Abschnitt 4.4.4, „Minimales System-Upgrade“) oder andere Teil-Upgrades des Systems durch, gefolgt von einem vollständigen Upgrade. Dies schafft die Möglichkeit, das System stückweise zu aktualisieren und erlaubt es Ihnen, den Paket-Cache vor dem vollständigen Upgrade nochmals zu leeren.

Beachten Sie, dass es ratsam ist, die sources.list zurück auf wheezy zu ändern (wie in Abschnitt A.2, „Überprüfen Ihrer Paketquellen“ beschrieben), um Pakete sicher entfernen zu können.

4.4.4. Minimales System-Upgrade

In einigen Fällen wird durch das direkte Ausführen des vollständigen Upgrades (wie unten beschrieben) eine große Anzahl von Paketen entfernt, die Sie eigentlich behalten möchten. Wir empfehlen deshalb einen zweiteiligen Upgrade-Prozess: als erstes ein minimales Upgrade, um diese Konflikte zu umgehen und anschließend ein vollständiges Upgrade wie in Abschnitt 4.4.5, „Upgrade des Systems“ beschrieben.

Führen Sie dazu zuerst dies aus:

# apt-get upgrade

Dies hat den Effekt, dass für diejenigen Pakete ein Upgrade durchgeführt wird, für die dies möglich ist, ohne dass irgendwelche anderen Pakete entfernt oder installiert werden müssen.

Solch ein minimales System-Upgrade kann auch nützlich sein, wenn auf dem System freier Festplattenplatz knapp ist und aus diesem Grund ein komplettes Upgrade nicht durchgeführt werden kann.

Falls das apt-listchanges-Paket installiert ist, wird es (in seiner Standard-Konfiguration) alle wichtigen Informationen über aktualisierte Pakete in einem Pager anzeigen. Drücken Sie q, nachdem Sie alles gelesen haben, um den Pager zu beenden und das Upgrade fortzusetzen.

4.4.5. Upgrade des Systems

Wenn Sie die vorherigen Schritte hinter sich gebracht haben, Sie sind bereit für den eigentlichen Hauptteil des Upgrades. Führen Sie aus:

# apt-get dist-upgrade
[Anmerkung]Anmerkung

Für den Upgrade-Prozess einiger früherer Veröffentlichungen wurde die Verwendung von aptitude empfohlen. Dieses Werkzeug wird für Upgrades von Wheezy auf Jessie nicht empfohlen.

Dadurch wird ein vollständiges Upgrade des Systems durchgeführt, also die Installation der neuesten verfügbaren Versionen aller Pakete und die Auflösung aller möglichen Änderungen bei den Abhängigkeiten zwischen Paketen der verschiedenen Veröffentlichungen. Falls nötig werden einige neue Pakete installiert (üblicherweise neue Bibliotheksversionen oder umbenannte Pakete) sowie veraltete Pakete entfernt, die Konflikte verursachen.

Falls Sie ein Upgrade von einem Satz CD-ROMs (oder DVDs) durchführen, werden Sie an verschiedenen Stellen des Upgrade-Prozesses aufgefordert, bestimmte CDs einzulegen. Sie müssen eventuell ein und dieselbe CD mehrmals einlegen; dies liegt daran, dass einige Pakete mit gegenseitiger Wechselbeziehung zueinander über verschiedene CDs verteilt sind.

Neue Versionen von bereits installierten Paketen, die nicht aktualisiert werden können, ohne den Installationsstatus eines anderen Pakets zu ändern, werden in ihrer derzeitigen Version belassen (sie werden als zurückgehalten angezeigt). Dies kann aufgelöst werden, indem Sie entweder aptitude verwenden, um diese Pakete zur Installation vorzumerken, oder indem Sie apt-get -f install paketname versuchen.

4.5. Mögliche Probleme während des Upgrades

Die folgenden Abschnitte beschreiben bekannte Probleme, die während des Upgrades auf Jessie auftreten können.

4.5.1. Dist-upgrade schlägt fehl mit »Could not perform immediate configuration«

In einigen Fällen kann der Schritt apt-get dist-upgrade nach dem Heruntergeladen der Pakete fehlschlagen mit der Meldung:

E: Could not perform immediate configuration on 'package'.  Please see man 5 apt.conf under APT::Immediate-Configure for details.

Falls dies passiert, sollte es möglich sein, mit apt-get dist-upgrade -o APT::Immediate-Configure=0 das Upgrade fortzusetzen.

Eine andere Möglichkeit dies zu umgehen ist, vorübergehend sowohl wheezy- wie auch jessie-Quellen in sources.list anzugeben und danach apt-get update auszuführen.

4.5.2. Zu erwartende Paketentfernungen

The upgrade process to jessie might ask for the removal of packages on the system. The precise list of packages will vary depending on the set of packages that you have installed. These release notes give general advice on these removals, but if in doubt, it is recommended that you examine the package removals proposed by each method before proceeding. For more information about packages obsoleted in jessie, see Abschnitt 4.10, „Veraltete Pakete“.

4.5.3. Conflicts- oder Pre-Depends-Schleifen

Manchmal ist es nötig, die Option APT::Force-LoopBreak in APT zu aktivieren, um die Möglichkeit zu haben, ein zwingend nötiges Paket vorübergehend entfernen zu können, falls das Problem einer Conflicts-/Pre-Depends-Schleife besteht. apt-get wird Sie über solch eine Problematik informieren und das Upgrade abbrechen. Sie setzen diese Option, indem Sie -o APT::Force-LoopBreak=1 in den apt-get-Befehl einfügen.

Es ist möglich, dass die Abhängigkeitsstruktur eines Systems so beschädigt ist, dass ein manuelles Eingreifen nötig ist. Dies erfordert üblicherweise die Verwendung von apt-get oder

# dpkg --remove paketname

um einige der beschädigten Pakete zu eliminieren, oder

# apt-get -f install
# dpkg --configure --pending

In extremen Fällen müssen Sie eventuell die Neuinstallation eines Pakets erzwingen; verwenden Sie dazu einen Befehl wie

# dpkg --install /pfad/zu/paketname.deb

4.5.4. Dateikonflikte

Dateikonflikte sollten nicht auftauchen, wenn Sie ein Upgrade auf einem reinen Wheezy-System durchführen, können aber vorkommen, wenn Sie inoffizielle Backports installiert haben. Ein Dateikonflikt resultiert in einem Fehler wie:

Entpacken von <irgendein-paket1> (aus <irgendein-paket1-dateiname>) ...
dpkg: Fehler beim Bearbeiten von <irgendein-paket1> (--install):
 Versuch, »<name-irgendeiner-datei>« zu überschreiben,
 welches auch in Paket <irgendein-paket2> ist
dpkg-deb: Unterprozess paste mit Signal (Broken pipe) getötet
 Fehler traten auf beim Bearbeiten von:
 <irgendein-paket1>

Sie können versuchen, einen Dateikonflikt zu lösen, indem Sie zwangsweise das Paket entfernen, das in der letzten Zeile der Fehlermeldung genannt wird:

# dpkg -r --force-depends paketname

Nachdem Sie die Probleme behoben haben, sollte es möglich sein, das Upgrade fortzusetzen, indem Sie die oben beschriebenen apt-get-Befehle nochmals ausführen.

4.5.5. Konfigurationsänderungen

Während des Upgrades werden Ihnen Fragen gestellt, die die Konfiguration oder Neukonfiguration von verschiedenen Paketen betreffen. Wenn Sie gefragt werden, ob Dateien in den Verzeichnissen /etc/init.d oder die Datei /etc/manpath.config durch die Version des Paketbetreuers ersetzt werden sollen, ist es für gewöhnlich nötig, mit yes (ja) zu antworten, um die Konsistenz des Systems sicherzustellen. Sie können jederzeit zu den alten Versionen der Konfigurationsdateien zurückkehren, da diese mit der Erweiterung .dpkg-old gesichert werden.

Falls Sie sich nicht sicher sind, was Sie tun sollen, schreiben Sie den Namen des Pakets oder der Datei auf und kümmern Sie sich später darum. Sie können die Mitschnittdatei durchsuchen, um die Informationen erneut zu betrachten, die zum Zeitpunkt des Upgrades auf dem Bildschirm angezeigt wurden.

4.5.6. Ändern der aktuellen Sitzung auf die Konsole

Wenn Sie das Upgrade von der lokalen Systemkonsole aus durchführen, werden Sie vielleicht feststellen, dass in einigen Situationen die Konsole auf eine andere Ansicht umgeschaltet wird, so dass Sie den Status des Upgrade-Prozesses nicht mehr beobachten können. Zum Beispiel könnte dies auf Arbeitsplatz-Systemen passieren, wenn der Displaymanager neu gestartet wird.

Um die Konsole wiederherzustellen, auf der der Upgrade-Prozess läuft, müssen Sie Strg+Alt+F1 betätigen (wenn Sie vom grafischen Startbildschirm zur 1. virtuellen Konsole wechseln möchten) oder Alt+F1 (wenn Sie sich auf einer virtuellen Text-Konsole befinden). Ersetzen Sie dabei F1 durch die Funktionstaste, die der Konsole zugeordnet ist, auf der der Upgrade-Prozess läuft. Sie können auch Alt+Pfeiltaste-Links oder Alt+Pfeiltaste-Rechts verwenden, um zwischen den verschiedenen Textmodus-Konsolen hin- und herzuschalten.

4.5.7. Besondere Sorgfalt bei speziellen Paketen

In den meisten Fällen sollte ein Paket-Upgrade von Wheezy auf Jessie reibungslos ablaufen. Es gibt jedoch eine geringe Anzahl von Fällen, in denen ein separater Benutzereingriff erforderlich sein könnte, entweder vor oder nach dem Upgrade. Diese sind hier nach Paketen getrennt aufgeführt.

4.5.7.1. Sudo

TODO: Is this relevant for Jessie (or was it is a thing for Wheezy)?

Wenn Sie /etc/sudoers verändert haben, sollten Sie sich der Veränderungen bewußt sein, die bezüglich der Art und Weise durchgeführt wurden, in der die sudo-Konfiguration behandelt wird. Die Standardausführung von /etc/sudoers enthält jetzt die folgenden beiden Regeln:

Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
#includedir /etc/sudoers.d

Keiner dieser Einträge wird während des Upgrades automatisch zu Ihrer /etc/sudoers hinzugefügt. (Obwohl Sie immer noch in der Lage sein werden, sudo-Befehle über die Angabe ihres voll-qualifizierten Pfads auszuführen.) Daher möchten Sie vielleicht Ihre Änderungen in das neue /etc/sudoers.d-Verzeichnis migrieren und die Standard-/etc/sudoers-Datei verwenden. Zum Beispiel:

# mv /etc/sudoers /etc/sudoers.d/mychanges
# mv /etc/sudoers.dpkg-new /etc/sudoers

Sie möchten möglicherweise auch Ihre /etc/sudoers.d/mychanges anpassen, um unerwünschte Defaults- und #includedir-Einträge zu entfernen. Sie sollten visudo dafür verwenden:

# visudo -f /etc/sudoers.d/mychanges

4.6. Upgrade des Kernels und zugehöriger Pakete

Dieser Abschnitt beschreibt, wie Sie ein Upgrade des Kernels durchführen und weist auf potenzielle Probleme hin, die diesen Vorgang betreffen. Sie können entweder eines der von Debian angebotenen linux-image-*-Pakete installieren oder einen eigenen Kernel aus den Quellen selbst kompilieren.

Beachten Sie, dass viele der Informationen in diesem Abschnitt auf der Annahme basieren, dass Sie einen der modularen Debian-Kernel zusammen mit initramfs-tools und udev verwenden. Falls Sie sich entscheiden, einen eigenen selbst erstellten Kernel zu benutzen, der keine Initrd benötigt, oder wenn Sie einen anderen Initrd-Generator verwenden, könnten einige der Informationen für Sie nicht relevant sein.

4.6.1. Das Kernel-Metapaket installieren

Wenn Sie ein Distributions-Upgrade von Wheezy auf Jessie durchführen, wird dringend empfohlen, dass Sie ein linux-image-*-Metapaket installieren, falls noch nicht geschehen. Dieses Paket könnte auch automatisch durch den Upgrade-Prozess installiert werden. Sie können dies verifizieren mit:

# dpkg -l "linux-image*" | grep ^ii

Falls nichts angezeigt wird, müssen Sie ein neues linux-image-Paket von Hand installieren. Eine Liste verfügbarer linux-image-Metapakete bekommen Sie mit:

# apt-cache search linux-image- | grep -v transition

Falls Sie bei der Entscheidung, welches Paket Sie wählen sollen, unsicher sind, führen Sie uname -r aus und suchen Sie nach einem Paket mit einem ähnlichen Namen. Falls die Anzeige zum Beispiel 2.6.32-5-amd64 ist, wird empfohlen, dass Sie linux-image-amd64 installieren. Sie können auch apt-cache benutzen, um eine ausführliche Beschreibung jedes Pakets zu bekommen, was Ihnen bei der Auswahl des besten Paketes helfen kann. Zum Beispiel:

# apt-cache show linux-image-amd64

Sie sollten dann apt-get install verwenden, um es zu installieren. Sobald dieser neue Kernel installiert ist, sollten Sie sobald wie möglich einen Neustart durchführen, um von der neuen Kernel-Version zu profitieren.

Für alle Experimentierfreudigen gibt es einen einfachen Weg, einen eigenen angepassten Kernel unter Debian zu kompilieren. Installieren Sie die Kernel-Quellen aus dem linux-source-Paket. Sie können dann das Target dep-pkg zur Erstellung eines Binär-Pakets verwenden. Weitere Informationen finden Sie im Debian Linux-Kernel-Handbuch, das es auch als debian-kernel-handbook-Paket gibt.

Falls möglich, wäre es ein Vorteil, wenn Sie das Kernel-Paket separat vom Rest des Systems aktualisieren, um die Wahrscheinlichkeit eines nicht-bootfähigen Systems zu reduzieren. Beachten Sie, dass Sie dies nur nach dem minimalen System-Upgrade (siehe Abschnitt 4.4.4, „Minimales System-Upgrade“) durchführen sollten.

4.6.2. Probleme mit dem Timing beim Booten (waiting for root device)

Falls eine durch initramfs-tools erstellte Initrd benutzt wird, um das System zu starten, könnte die Erzeugung von Gerätedateien durch udev zu spät stattfinden, sodass die Boot-Skripte nicht mehr darauf reagieren können.

Gängige Phänomene sind, dass der Boot-Vorgang fehlschlägt, weil das root-Dateisystem nicht eingebunden werden kann; sie werden auf eine Debug-Shell zur Fehlersuche umgeleitet:

Gave up waiting for root device.  Common problems:
 - Boot args (cat /proc/cmdline)
   - Check rootdelay= (did the system wait long enough?)
   - Check root= (did the system wait for the right device?)
 - Missing modules (cat /proc/modules; ls /dev)
ALERT!  /dev/something does not exist.  Dropping to a shell!
(initramfs) 

Auf deutsch:
Warten auf root-Gerät aufgegeben. Übliche Probleme:
 - Boot-Argumente (cat /proc/cmdline)
   - Überprüfen Sie rootdelay= (hat das System lange genug gewartet?)
   - Überprüfen Sie root= (hat das System auf das richtige Gerät gewartet?)
 - Fehlende Module (cat /proc/modules; ls /dev)
ALARM!  /dev/irgendwas existiert nicht.  Rücksprung auf eine Shell!
(initramfs) 

Wenn Sie dann aber alles kontrollieren, sind alle benötigten Gerätedateien in /dev vorhanden. Dies ist in Fällen beobachtet worden, bei denen das Wurzel-Dateisystem (/) auf einer USB-Festplatte oder auf einem RAID lag, speziell wenn LILO genutzt wurde.

Das Problem kann umgangen werden, indem der Boot-Parameter rootdelay=9 verwendet wird. Der Wert für die Zeitüberschreitung (in Sekunden) muss eventuell noch angepasst werden.

4.7. Dinge, die vor dem Neustart erledigt werden sollten

Wenn apt-get dist-upgrade beendet ist, sollte das formale Upgrade abgeschlossen sein, aber es gibt ein paar andere Dinge, um die Sie sich vor dem nächsten Neustart kümmern sollten.

4.7.1. Purging removed packages

It is generally advisable to purge removed packages. This is especially true, if these have been removed in an earlier release upgrade (e.g. from the upgrade to wheezy) or from third-party vendors. In particular, old init.d scripts have been known to cause issues.

[Achtung]Achtung

Purging a package will generally also purge its log files, so you might want to back them up first.

The following command displays a list of all removed packages that may have configuration files left on the system (if any):

    # dpkg -l | awk '/^rc/ { print $2 }'
  

The packages can be removed by using apt-get purge. Assuming you want to purge all of them in one go, you can use the following command:

    # apt-get purge $(dpkg -l | awk '/^rc/ { print $2 }')
  

If you use aptitude, you can also use the following alternative to the commands above:

    $ aptitude search '~c'
    $ aptitude purge '~c'
  

4.8. Vorbereiten auf die nächste Veröffentlichung

Nach dem Upgrade gibt es einige Dinge, die Sie tun können, um für die nächste Veröffentlichung vorbereitet zu sein.

4.9. Missbilligte Komponenten

Ab der nächsten Veröffentlichung von Debian (9, Codename Stretch) werden einige Funktionalitäten als veraltet gelten. Benutzer werden auf andere Alternativen umschwenken müssen, um Probleme beim Upgrade auf 9 zu vermeiden.

Dazu gehören die folgenden Funktionalitäten:

4.10. Veraltete Pakete

Introducing lot of new packages, jessie also retires and omits quite some old packages that were in wheezy. It provides no upgrade path for these obsolete packages. While nothing prevents you from continuing to use an obsolete package where desired, the Debian project will usually discontinue security support for it a year after jessie's release[5], and will not normally provide other support in the meantime. Replacing them with available alternatives, if any, is recommended.

Es gibt viele Gründe, warum Pakete aus der Distribution entfernt worden sein könnten: sie wurden von den Originalautoren nicht mehr betreut; es ist kein Debian-Entwickler mehr daran interessiert, sie zu betreuen; die Funktionalität, die sie bieten, ist durch andere Software (oder eine neuere Version) ersetzt worden, oder sie wurden (aufgrund von Fehlern darin) als nicht mehr passend für Jessie angesehen. Im letzten Fall könnten sie trotzdem noch in der unstable-Distribution vorhanden sein.

Zu erkennen, welche Pakete in einem aktualisierten System veraltet (obsolete) sind, ist einfach, da die Paketmanagement-Programme sie entsprechend markieren. Wenn Sie aptitude verwenden, werden Sie eine Liste dieser Pakete im Abschnitt Veraltete und selbst erstellte Pakete finden.

Die Debian-Fehlerdatenbank bietet oft zusätzliche Informationen, warum ein Paket entfernt wurde. Sie sollten sowohl die archivierten Fehlerberichte für das Paket selbst als auch für das Pseudo-Paket ftp.debian.org kontrollieren.

Die Liste der veralteten Pakete enthält:

  • postgresql-9.1, successor is postgresql-9.4. Once the operating system upgrade is finished, you should plan to also upgrade your PostgreSQL 9.1 database clusters to the new PostgreSQL version 9.4 using the pg_upgradecluster tool.

  • python3.2, successor is python3.4. (Version 2.7 is supported in both wheezy and jessie.)

  • ruby1.8 and ruby1.9.1; successor is ruby2.1. Please install the package ruby to automatically track the current ruby version.

  • mplayer; alternatives are mplayer2, and mpv (new in jessie). Whilst the former is mostly compatible with mplayer in terms of command-line arguments and configuration (and adds a few new features too), the latter adds a lot of new features and improvements, and it is actively maintained upstream.

  • openoffice.org; please use libreoffice.

  • squid, successor is squid3.

4.10.1. Dummy-Pakete

Einige Pakete aus Wheezy sind für Jessie in mehrere Pakete aufgeteilt worden, oft um die System-Wartungsfähigkeit zu erhöhen. Um in solchen Fällen den Upgrade-Prozess zu erleichtern, bietet Jessie oft sogenannte Dummy-Pakete an: leere Pakete, die den gleichen Namen haben wie das alte Paket in Wheezy und mit entsprechenden Abhängigkeiten, die dazu führen, dass die neuen Pakete installiert werden. Diese Dummy-Pakete werden nach dem Upgrade-Prozess als nicht mehr benötigt angesehen und können problemlos entfernt werden.

Die Paketbeschreibungen der meisten (aber nicht aller) Dummy-Pakete enthalten einen Hinweis auf ihren Zweck. Die Paketbeschreibungen für Dummy-Pakete sind jedoch nicht standardisiert, daher ist vielleicht deborphan mit einer der --guess-*-Optionen (z.B. --guess-dummy) für Sie sinnvoll, um diese Pakete auf Ihrem System zu finden. Beachten Sie, dass einige Dummy-Pakete nicht dazu gedacht sind, nach einem Upgrade entfernt zu werden, sondern stattdessen dazu dienen, die gerade verfügbare Version eines Programms über längere Zeit zu verfolgen.



[1] Wenn die debconf-Priorität auf einen sehr hohen Wert gesetzt ist, können Sie so eventuell Konfigurationsfragen vermeiden, aber Dienste, die auf Standardantworten angewiesen sind, welche jedoch auf Ihrem System nicht zutreffend sind, werden nicht erfolgreich starten.

[2] Zum Beispiel: DNS- oder DHCP-Dienste, besonders wenn keine Redundanz- oder Ersatzsysteme für den Fall eines Ausfalls vorhanden sind. Im Fall von DHCP-Diensten werden die Endbenutzer unter Umständen vom Netzwerk getrennt, wenn die Lease-Zeit niedriger ist als die, die für den Abschluß des Upgrade-Prozesses benötigt wird.

[3] Diese Funktionalität kann deaktiviert werden, indem der Parameter panic=0 zu den Boot-Parametern hinzugefügt wird.

[4] Das Paketverwaltungssystem von Debian erlaubt es normalerweise nicht, dass ein Paket Dateien anderer Pakete entfernt oder ersetzt, es sei denn, es wurde definiert, dass es das andere Paket ersetzt.

[5] So lange es keine andere Veröffentlichung in diesem Zeitraum gibt. Typischerweise werden zu jeder Zeit nur zwei stabile Veröffentlichungen mit Sicherheitsaktualisierungen unterstützt.