Monday, November 15, 2010

EOLUpgrades Ubuntu

Introduction

This page will explain how to upgrade an End of Life (EOL) release of Ubuntu to a supported system. This guide is not limited to Ubuntu (with the Gnome desktop). Any Ubuntu flavor (Kubuntu/Edubuntu and/or server installation and others) can use this guide. For upgrading supported releases please refer to this document. Mac users may have some difficulty upgrading to the most current release around versions 7.04/7.10.
If you want to know whether your release is EOL please have a look at the following resources:
These guides assumes that the user knows his way on the terminal, as no graphical tools are used. This said, the steps for executing all the commands are actually copy/pasteable so everyone, from beginner to advanced user running EOL releases of Ubuntu can execute the upgrade(s).

Why upgrade

Why should you upgrade instead of performing a clean install of a supported version? Some don't like to perform new installations when there is a possibility to upgrade. The advantage of this is that you can keep your current configuration without having to change much. This is often the case in production environments where you don't want to lose a machine just because it needs a higher OS version.
The scientific approach. It is possible to do, so why wouldn't we give it a shot? This is how I started out writing this guide. I had to help someone else, who was in another timezone and I thought my sleep was precious so I wrote a guide telling him how to upgrade to 8.04. When I was finished I decided it was fun to see if I could upgrade from 4.10 to the most current version (I admit, I took a shortcut when I arrived at 6.06, I upgraded directly to 8.04).
Also, if your computer cannot start a live USB for whatever reason, and all you have is a Dapper Drake installation disc, then there's no other choice: you have to download the updates and install them from within Ubuntu.
The last reason is more a flame. Why would we do it the Microsoft way? If we don't know, just restart... Why don't we try to fix the issue, even if it takes a bit more time. The time it takes per upgrade is dependent on your installation.
There are reasons why one should not upgrade, but rather reinstall. From 9.04 (jaunty) ext4 becomes available. If you want to benefit from the new features ext4 has for you then you might just as well reinstall one of the supported releases (LTS and non-LTS). 

Upgrade

This guide consists of four main parts.
The first part will cover upgrading from 8.10 to 9.04 and up (eventually to 10.04). We will do the following upgrades, 8.10 to 9.04 to 9.10 to 10.04 LTS.
The second part will cover upgrading from 6.10 to 8.04.3 LTS. We will do the following upgrades, 6.10 to 7.04 to 7.10 to 8.04.3 LTS.
The third part covers upgrading from 6.06 LTS to 8.04.3 LTS. This is the preferred way of upgrading to 8.04.3 from 6.06. You will not need to upgrade to 7.x. At the time of writing this is not an EOL upgrade.
The fourth part will be about upgrading 4.10 to 6.06.2 LTS. We will do the following upgrades, 4.10 to 5.04 to 5.10 to 6.06.2 LTS.
Note
Ubuntu 6.06's support has ended in June 2009 for desktops and will end June 2011 for servers. This will mean a lot of desktop applications are not supported or updated anymore. See this list of supported packages. Upgrading 6.06.x to 8.04 is regarded as a regular upgrade. Please see DapperUpgrades or HardyUpgrades for more information.

Requirements

/etc/apt/sources.list

Please make sure you have the following sources.list, change CODENAME to your release, e.g. breezy.
## EOL upgrade sources.list
# Required
deb http://old-releases.ubuntu.com/ubuntu/ CODENAME main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ CODENAME-updates main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ CODENAME-security main restricted universe multiverse

# Optional
#deb http://old-releases.ubuntu.com/ubuntu/ CODENAME-backports main restricted universe multiverse
You can make use of -backports if you want, or -proposed. For more information about repositories https://help.ubuntu.com/community/Repositories/Ubuntu

Dependencies

You should also make sure some meta-packages are installed so the upgrade can continue without problems:

Update-manager

From version 6.06 and up you will need to install the update-manager and update-manager-core packages.
# update-manager is something you don't want to install on cli servers
sudo aptitude install update-manager-core update-manager
Also make sure that the update manager is correctly configured to upgrade any release:
sudo perl -pi -e 's/^Prompt=.*/Prompt=normal/' /etc/update-manager/release-upgrades

Ubuntu-desktops

If you run a particular desktop version, you might want to reinstall this package to resolve any issue with dependencies of that package. You can (re)install these -desktop packages before or after your upgrade. To find out if you which desktop package you want to (re)install: dpkg -l | grep tu-desktop. Or search for one by running aptitude search tu-desktop. The correct commands to (re)install are:
# The Kubuntu desktop
sudo aptitude install kubuntu-desktop
# or
sudo aptitude reinstall kubuntu-desktop

Kernels

sudo aptitude install linux-image-generic linux-headers-generic
# or
sudo aptitude install linux-image-server linux-headers-server
# or
sudo aptitude install linux-image-virtual linux-headers-virtual
  • 5.04: linux-image-386 and linux-headers-386
sudo aptitude install linux-image-386 linux-headers-386
  • 4.10: linux-image-386 and linux-kernel-headers
sudo aptitude install linux-image-386 linux-kernel-headers

Known issues

Some issues are related to apt-get upgrade and dist-upgrade commands. If you get calculation errors when running do-release-upgrade you can resolve this issue by running do-release-upgrade -m desktop or you can remove the ubuntu-desktop package. When aptitude is used there is no need for this. Please follow the guide exactly, when this guide wants to use apt-get, it will tell you :)
If you run into individual dependency issues you need to resolve these individually. You can use sudo apt-get -f install for this. And then continue by running e.g. sudo ./feisty --frontend DistUpgradeViewTextm -mode=server. Replace feisty with the release where you upgrade to, this will continue the do-release-upgrade process.

8.10 to 9.10 (Intrepid to Karmic)

This upgrade exercise has been executed on a fresh install of Ubuntu 8.10 and we will upgrade to 9.10.
Intrepid 8.10 to Jaunty 9.04
Jaunty 9.04 to Karmic 9.10

6.10 to 8.04 (Edgy to Hardy)

This upgrade exercise has been executed on a fresh install of Ubuntu 6.10 and we will upgrade to 8.04.3 LTS.
Edgy 6.10 to Feisty 7.04
Feisty 7.04 to Gutsy 7.10
Gutsy 7.10 to Hardy 8.04

6.06 to 8.04.3 (Dapper to Hardy)

Dapper 6.06 to Hardy 8.04.3

4.10 to 6.06 (Warty to Dapper)

This upgrade exercise has been executed on a fresh install of Ubuntu 4.10 and we will upgrade to 6.06.2 LTS.
Warty 4.10 to Hoary 5.04
Hoary 5.04 to Breezy 5.10
Breezy 5.10 to Dapper 6.06.2

See Also

Upgrade path:
Bugs:

No comments:

Post a Comment

If you have any suggestion or clarification you send it via on this form.