Feb 05

Ubuntu 6.06 Dapper Dist Upgrade

Category: Linux,Ubuntu   — Published by tengo on February 5, 2009 at 1:48 pm

After 3 years of solid service, it was time to update a few machines running Ubuntu 6.06 LTS Dapper Drake. A complete system wide upgrade is called a DistUpgrade - in contrary to updating/upgrading individual packages installed on your system, usually done with apt-get update && apt-get upgrade.

Be sure to read some more manuals on how to upgrade before you do so. Don't blame me if you ruin your system when you follow the steps on this page only! A good start should be Upgrading to Ubuntu 8.04 LTS.

Ubuntu 6.06 Dapper Update Manager GUI showing option to DistUpgrade screenshotRumors go, that updating through GUI is more solid and will lead to fewer errors, thus we start by firing up the Update Manager. Go to console and type: gksu 'update-manager -c'. Gksu is the sudo command for the gui. The update-manager is the app you usually access through System > Update Manager, supplying the -c option is short for --check-dist-upgrade, it checks if a new distribution release is available.

After that the update manager should open, with the added option on top of the window to do a complete dist upgrade, along with a note to which version the update is possible. In my case, the button said: "New distribution release 8.04 LTS is available". But when I started, I got the error message that said: "Could not find the release notes. The server may be overloaded." Depending on your language setting it may also be "Freigabemitteilungen konnten nicht gefunden werden" (de) or "Impossible de trouver les informations de version" (fr) or "No se han podido encontrar las notas de publicación" (es)

That left me puzzled for a while. After a bit of research, I found a few hints that this problem might be related to a bug (#62808) in the version of update-manager installed on my system. As it seems, the app does not contact the right source, or the source has been moved/removed since the code was released... As I found out the source was the problem.

Update-manager does read (or at least write) its data sources to /var/lib/update-manager/meta-release. A quick glance with nano showed that update manager was contacting sources which are effectively gone. The snippet from my file:

Dist: hardy
Name: Hardy Heron
Version: 8.04.1 LTS
Date: Thu, 24 Apr 2008 12:00:00 UTC
Supported: 1
Description: This is the 8.04.1 LTS release
Release-File: http://archive.ubuntu.com/ubuntu/dists/hardy/Release
ReleaseNotes: http://archive.ubuntu.com/ubuntu/dists/hardy-proposed/main/dist-upgrader-all/0.87.27/ReleaseAnnouncement
UpgradeTool: http://archive.ubuntu.com/ubuntu/dists/hardy-proposed/main/dist-upgrader-all/0.87.27/hardy.tar.gz
UpgradeToolSignature: http://archive.ubuntu.com/ubuntu/dists/hardy-proposed/main/dist-upgrader-all/0.87.27/hardy.tar.gz.gpg

If you copy these URLs to your browser, you will find out that for example http://archive.ubuntu.com/ubuntu/dists/hardy-proposed/main/dist-upgrader-all/0.87.27/ReleaseAnnouncement produces an error 404. The first idea was to edit the meta-release file, but I found our that firing up update-manager afterthat actually wipes and overwrites the file, again with the wrong false values. I don't know where it pulls these from, tell me if you know!

What actually solved the problem was to start the upgrade manager with the additional "-d" option, which is for --devel-release (check if upgrading to the latest devel release is possible). And this switch changed the wiped meta-release file completely! Now the 8.04 entry points to a working "http://archive.ubuntu.com/ubuntu/dists/hardy-proposed/main/dist-upgrader-all/current/ReleaseAnnouncement" and additionally there's an entry for 8.10.

So start update manager with gksu 'update-manager -c -d' and everything works as expected!