How to Upgrade Debian Lenny to Debian Squeeze

One rather old laptop and one server were the test objects for this howto. Both systems do not have any RAID devices and use a simple partition scheme from a default basic Lenny install. If your setup deviates much from this, it’s highly recommended to read all details of the Debian Release Notes before you continue. Be warned. All commands are run as root and Debian recommends to use apt-get for the Squeeze upgrade process.

As with all upgrades, begin with a backup of your critical data, and that will be the users data in /home/your-users but I would also back up the content of all configurations files. The latter can quickly be archived:

tar -czvf host.etc.tar.gz /etc

Move your files for safe storage on a backup drive.
Edit your Apt source list file
To prepare for the installer, we need to get to a point where the package system is in a clean state. Move the preferences file from the directory if used. If you have a very complicated Debian source file, I would recommend that this is simplified to near the original install.

Open up a command line editor and reduce /etc/apt/source.list to something similar to only:

deb http://ftp.se.debian.org/debian/ lenny main contrib non-free
deb-src http://ftp.se.debian.org/debian/ lenny main contrib non-free
deb http://security.debian.org/ lenny/updates main
deb-src http://security.debian.org/ lenny/updates main
deb http://volatile.debian.org/debian-volatile lenny/volatile main
deb-src http://volatile.debian.org/debian-volatile lenny/volatile main

Naturally your country code is likely to be different from mine se.

Update the packages for Lenny
With a few commands we will make sure that the existing package system is in good shape before the system is upgraded to Squeeze.
apt-get update

Ready for first upgrade:
apt-get upgrade

Follow this with:
apt-get dist-upgrade

Check that no packages are on hold or in any half installed state. The system usually contains many many packages, and before the real upgrade stage we must fix such problem packages.

Ensure that we do not have any packages on hold with:
dpkg --audit
dpkg --get-selections | grep hold

No packages can be on hold. For the final go ahead test use:
aptitude

Press g and the list shows which packages need your attention. Fix any packages in the action list, until the message says:
No packages are scheduled to be installed, removed or upgraded

Only then you are done and ready to pass this point.

Update the source list for Squeeze
Update once more the /etc/apt/sources.list:
deb http://ftp.se.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.se.debian.org/debian/ squeeze main contrib non-free
deb http://security.debian.org/ squeeze/updates main
deb-src http://security.debian.org/ squeeze/updates main

and at the command line type:
apt-get update

Squeeze upgrade in two careful steps
It’s recommenced to use a two stage upgrade approach with kernel, udev and the preparation for grub2. After the first completed the full distribution upgrade is performed. Start with the upgrade like so:
apt-get upgrade

Now to the kernel; we need to find your flavor, i.e. the exact version numbers and architecture and install it with:
uname -r
apt-get install linux-image-2.6.26-2-amd64

If the system is old like my laptop it would install with:
apt-get install linux-image-2.6.26-2-686

Prepare grub2 and udev for the new system:
update-grub
apt-get install udev

Once previous steps have completed, it’s time to restart the system:
reboot

Almost there
When the system has restarted, continue with the full upgrade phase:
apt-get dist-upgrade

Starting the system with the first menu item shows if grub2 works properly, if so run:
upgrade-from-grub-legacy

which will install grub2 in the Master Boot Record (MBR) on the disk.
Further information are found on Debian main site.

Via Howtoforge

1 thought on “How to Upgrade Debian Lenny to Debian Squeeze”

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: