This page is obsolete, and no longer updated. Please find an updated page here.
Note that this should only be done over single releases (ie don't go from Sarge straight to Lenny)
On Debian? What does cat /etc/debian_version
say?
3.0 is Woody
3.1 is Sarge
4.0 is Etch
5.0 is Lenny
If you want to dist-upgrade to Etch use something like this for your /etc/apt/sources.list:
deb http://http.us.debian.org/debian etch main contrib non-free
deb http://security.debian.org etch/updates main contrib non-free
Or normally the following will work...
sed --in-place 's/^\([^#].*debian-non-US\)/#\1/g' /etc/apt/sources.list
sed --in-place 's/sarge/etch/g' /etc/apt/sources.list
Then run...
# to minimize all those tedious 'are you sure'? messages.
export DEBIAN_PRIORITY=critical
export DEBIAN_FRONTEND=noninteractive
# run the dist upgrade
apt-get update
apt-get dist-upgrade
We have run this a few times on VPS'. And the process seems pretty safe/hassle free.
If you get errors like these...
WARNING: The following packages cannot be authenticated!
libruby1.8 ruby1.8 ruby
Install these packages without verification [y/N]?
... run ...
gpg --keyserver pgpkeys.mit.edu --recv-key 2D230C5F
gpg -a --export 2D230C5F | apt-key add -
apt-get update
Rinse and repeat for each version you need to upgrade to. You can always find the details on the latest stable release at http://www.debian.org/releases/stable/
As always, if you are not sure, feel free to get one of our staff to assist you by popping in a support ticket.