Debian Squeeze auf Jessie

TIL Ein Upgrade von Debian Squeeze (6) auf Jessie (8) ohne Umweg über Wheezy (7) ist möglich, aber mit Schmerzen verbunden.
 

TL;DR: Eine Neuinstallation geht in der Regel einfacher. Falls man es trotzdem probieren will, dann sollte man an ein Backup denken und einigermaßen wissen, wie man mit Dependency-Problemen bei der Paketinstallation umzugehen hat.

Der Anfang ist wie üblich:

$ apt-get update
$ apt-get upgrade
$ apt-get dist-upgrade

Dann in /etc/apt/sources.list jedes 'squeeze' auf 'jessie' ändern, 'backports' und 'squeeze-lts' entfernen.

Anschließend geht der Spaß los... zunächst läuft es noch wie gewohnt:

$ apt-get update
$ apt-get upgrade
$ apt-get dist-upgrade

Irgendwann wird es dann notwendig, mime-support_3.58_all.deb zu patchen:

$ dpkg-deb -x /var/cache/apt/archives/mime-support_3.58_all.deb mime-support_3.58_all
$ dpkg-deb -e /var/cache/apt/archives/mime-support_3.58_all.deb mime-support_3.58_all/DEBIAN
$ sed -i -e 's/interest-noawait/interest/g' mime-support_3.58_all/DEBIAN/triggers
$ dpkg-deb -b mime-support_3.58_all mime-support_3.58_all.deb
$ dpkg -i mime-support_3.58_all.deb

Ein paar mal bricht die Installation ab, dann kommt man mit 'dpkg --configure -a' und 'apt-get install -f' weiter und kann anschließend mit 'apt-get upgrade' bzw. 'apt-get dist-upgrade' fortfahren. Das Paket 'nagios-plugins-contrib' musste ich vollständig entfernen, um ein Dependency-Problem zu lösen - am Ende kann man es jedoch wieder neu installieren.

Wenn man noch auf dem Originalkernel arbeitet und nicht auf einem zurückportierten, dann will udev außerdem irgendwann zu seinem Glück gezwungen werden. Es warnt vehement davor, weil das System dadurch nicht mehr hochfahren wird; zumindest nicht, solange man den Kernel noch nicht aktualisiert hat:

$ touch /etc/udev/kernel-upgrade

In dem Fall am Ende unbedingt kontrollieren, ob auch der 3.16er-Kernel installiert wurde bzw. ihn nachinstallieren:

$ apt-get install linux-image-amd64 linux-headers-amd64

Schließlich noch die verwaisten Pakete kontrollieren:

$ aptitude search ?obsolete

und falls keine Ausnahmen drin sind entfernen:

$ aptitude remove ?obsolete

Alles ohne Gewähr!

Comments

Thanks!

Danke - die Hinweise haben funktioniert und das System ist nun nach langer Zeit wieder aktuell