Saturday, February 28, 2009

How To Upgrade A Debian Etch To Debian Lenny

How To Upgrade A Debian Etch System (Server & Desktop) To Debian Lenny

This article shows how you can upgrade a system running Debian Etch to Debian Lenny. It is intended for both server and desktop systems.

I do not issue any guarantee that this will work for you!

1 Preliminary Note

You should take a backup of your Debian Etch system (you can find some suitable tutorials for this in the Backup category), just in case something goes wrong (but the upgrade worked fine for me).

2 Install The Latest Etch Updates

Before we upgrade to Lenny, we install the latest updates for Etch.

Make sure that your /etc/apt/sources.list uses etch, not stable (because lenny is the new stable), e.g. as follows:

vi /etc/apt/sources.list

deb etch main
deb-src etch main

deb etch/updates main contrib
deb-src etch/updates main contrib

Then install the updates as follows:

aptitude update

aptitude upgrade

3 Modify /etc/apt/sources.list To Use Lenny

After we have installed the latest Etch updates, we open /etc/apt/sources.list...

vi /etc/apt/sources.list

... and replace all etch references with lenny:

deb lenny main
deb-src lenny main

deb lenny/updates main contrib
deb-src lenny/updates main contrib

Then update the packages database:

aptitude update

4 Doing The Upgrade

Next we install the Lenny versions of dpkg, aptitude, and apt because their Etch versions are often unable to handle the upgrade to Lenny:

aptitude install dpkg aptitude apt

Then we do a minimal system upgrade (because a full upgrade might cause some conflicts at this stage):

aptitude upgrade


If this is a desktop system, you should now check if the package libfam0c102 is installed:

dpkg -l libfam0c102 | grep ^ii

If it is, install its Lenny version now:

aptitude install libfam0


Afterwards, we can start the full distribution upgrade:

aptitude full-upgrade

(This command is the same as aptitude dist-upgrade.)

Afterwards, reboot the system:


After the reboot, check your new kernel:

uname -r

It should display Lenny's 2.6.26 kernel, e.g.:

server1:~# uname -r

And /etc/debian_version should now contain 5.0:

cat /etc/debian_version

server1:~# cat /etc/debian_version

No comments: