Hier ein paar Probleme und deren Lösung beim Update eines Ubuntu-Servers 7.10 (Gutsy Gibbon) auf die neueste Version 8.04 LTS (Hardy Heron). Der „offizielle“ Upgrade-Pfad, der auf der Ubuntu Website beschrieben wird hat leider bei mir nicht ganz geklappt – und vielleicht gibt es da draußen den einen oder anderen, der auf die selben Probleme stößt 😉

Noch einige Warnungen bevor ich loslege: Backup des Servers nicht vergessen! Die nachfolgende Beschreibung ist nur für die Leser zur Nachahmung gedacht, die wissen was sie mit ihrem Kommandozeilen-Terminal tun. Natürlich auf eigenes Risiko!

  • Problem 1: Ich nutze bisher apt-get statt aptitude … beide Systeme darf man jedoch nicht parallel nutzen!
  • Lösung: Kein Problem, die im offiziellen Upgrade-Pfad beschriebenen Schritte lassen sich auch mit apt-get statt mit aptitude erledigen. Die Kommandos sind also:

    $ sudo apt-get update
    $ sudo apt-get upgrade
    $ sudo apt-get install update-manager-core
    $ sudo do-release-upgrade

    Bitte NICHT am Ende des Upgrades restarten … Warum? Siehe Problem 3!
  • Problem 2: Das do-release-upgrade Script startet, bricht dann den Upgradevorgang ab und gibt an, dass auf der boot-Partition nicht genügend freier Speicherplatz zur Verfügung steht:

    The upgrade aborts now. The upgrade needs a total of 52.4M free space on disk '/boot'. Please free at least an additional 18.1M of disk space on '/boot'. Empty your trash and remove temporary packages of former installations using 'sudo apt-get clean'.
  • Lösung: Als erstes kann man die Paketverwaltung mit dem vorgeschlagenen Kommando aufräumen:

    $ sudo apt-get clean

    … allerdings reichte das auf meinem Server nicht aus. Beim Durchsehen der installierten Pakete wurde klar, dass noch eine Reihe alter Kernel-Versionen installiert waren. Und die liegen alle in der boot-Partition und können zum Teil ohne Probleme gelöscht werden. Mit dem folgenden Kommando läßt sich überprüfen, welche Kernel-Versionen auf dem eigenen Ubuntu-Server installiert sind:

    $ dpkg -l | grep linux-image

    In meinem Fall konnte ich das alte linux-image-2.6.15-29 und das linux-image-2.6.17-12 ohne Probleme löschen. Doch Vorsicht, die neuesten Versionen des Kernels sollte man unangetastet lassen – so hat man immer eine Fallback-Position.

    $ sudo apt-get remove --purge linux-image-2.6.15*
    $ sudo apt-get remove --purge linux-image-2.6.17*

    Nach dem Löschen der alten Kernel-Versionen muss die menu.lst aktualisiert werden:

    $ sudo update-grub

    Danach checke ich zur Sicherheit immer nochmals, ob die Kernel-Liste nun korrekt ist. Dazu öffnet man die Datei einfach in einem Texteditor – wie vi:

    $ sudo vi /boot/grub/menu.lst

    Wenn die „automatic kernel list“ am Ende der Datei in Ordnung ist, kann man nochmals versuchen den Upgrade-Vorgang zu starten.
  • Problem 3: Die Ubuntu-Geeks haben dieses Problem beim Update auf 8.04 schon selbst gelöst. Doch beim Upgrade von Feisty Fawn auf Gutsy Gibbon hatte ich richtig Probleme: Das do-release-upgrade funktionierte ohne Fehlermeldung, doch als ich den Server neustarten wollte bootete er nicht! Über das Safety-System des Servers konnte ich den Übeltäter schließlich ausmachen: Die Kernel-Liste war vom do-release-upgrade-Script nicht korrekt angelegt worden!
  • Lösung: Aus diesem Grund beende ich das do-release-upgrade-Script niemals mit einem Neustart des Servers. Vielmehr re-aktualisiere ich als ersten Schritt die Datei menu.lst:

    $ sudo update-grub

    Danach checke ich die Kernel-Liste wie oben beschrieben mit einem Text-Editor – hier vi:

    $ sudo vi /boot/grub/menu.lst

    Ist die „automatic kernel list“ am Ende der Datei korrekt, kann man endlich den Neustart des Servers vornehmen.

    $ sudo restart

Nach dem Upgrade und dem Restart des Servers sollte dieser wieder via ssh verfügbar sein. Dann läßt sich als kleine Bestätigung die Version der installierten Linux-Version abrufen:

$ lsb_release -a

Das Ergebnis sollte wie folgt aussehen ;-):

No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 8.04
Release: 8.04
Codename: hardy

Ich hoffe dieses HowTo bzw. die Beschreibung möglicher Probleme und ihrer Lösungen helfen euch etwas Zeit einzusparen die man bei dem guten Wetter sicher besser nutzen kann 😉

Share This