Upgrading to etch

It has been a long long time I have not updated to my blog. Here is my first in 2007: "Updating to Etch".

I have been a big fan of Debian for 5 years, first woody, then sarge and now etch! As you may know, punknix.com is powered by Debian and my lovely embedded x86 project "Voyage" is also debain-based. At the time I write this blog, punknix.com has just been updated to etch. The upgrading process is not as smooth as you should expect, but carefully follow the release notes is much more safer, I believe.

Right now I would like to share my personal experience for the upgrading. Most of the materials you could found in the release notes, but concrete examples are better than a large piece of documents ;-). Although my procedure for upgrading punknix.com to etch is not documented, but I have another UML environment that is suitable candidate for this "experiement"!

At first, remove unnecessary deb repository entries (esp. sarge-backports) in /etc/apt/sources.list. For me, I left out with the following entries:

deb http://ftp.hk.debian.org/debian/ stable main contrib
deb-src http://ftp.hk.debian.org/debian/ stable main contrib
deb http://security.debian.org/ stable/updates main contrib

Then safely run:

# aptitude update

Next, run:

# aptitude upgrade

This will upgrade packages without requiring any other packages to be removed or installed.

Follow the minimal upgrade with:

# aptitude install cu
Installing any new package automatically upgrades libc6 packages.

If you run desktop frontend, you will run the following commandline:

# aptitude install x11-common libfam0 xlibmesa-glu

In my UML environment doesn't need X11, I skip this part.

Next, it is now ready for main upgrade:

# aptitude dist-upgrade

After the upgrade, you will need new package signature checking mechanism:

# aptitude update

Right now, we have upgraded to a new etch system! What we left is to remove some orphan packages by:

# deborphan
# apt-get remove `deborphan`
You may need to run deborphan a couples of time to remove all orphan packages completely.

That's it! Next, you might want to upgrade linux kernel to 2.6.18 of course. In UML envirnoment, I don't need to upgrade the kernel. But it is required for punknix.com as 2.4.26 is very ancient. Now, apt-get show all available linux kernel images:

# apt-get install linux-image

I choose linux-image-2.6.18-4-vserver-686 for VServer support initially. I have also changed the bootloader from lilo to grub. Etch also supports Xen, and of course I will test it out in a very near future!