Today I'm going to upgrade my _old_ Ubuntu Hardy Heron X86_64 laptop to the fresh _new_ (autumnal) Ubuntu Intrepid Ibex X86_64, the CLI way (this pocess "should" also work with the 32 bit version).
Open a new virtual terminal and type:
cd dpkg −−get−selections > ~/my-installed-programs
With the above command, you'll make a backup copy of the synaptic choices you already made. In other words, the command allows you to save a list of programs that you may re-install should anything go wrong.
It is also a good idea to save a backup copy of your third party repository sources (also don't forget their respective keys! - TIP: I paste 3rd party repo keys as inline comments inside my repo files), so:
cp /etc/apt/sources.list.d/* 3rdparties/
Now save your /etc (just in case):
tar cvf etc.tar /etc
Also, make a backup copy of your important stuff; here I'll show you how to perform a simple tbz2 backup archive of your important stuff:
tar cvjf $(whoami)-backup.tbz2 ~
Expect the above command to take a while (depending on the amount of your data and your CPU's juice).
Once you have your user profile file backed-up and moved somewhere safe (ie. save it on your flash keys, ext HDDs, etc.), you may start the REAL Upgrade process.
To perform the distribution upgrade, type:
sudo apt-get install update-manager-core
Respond to the first one or two basic questions, wait for the process to be finished, reboot when asked, and (hopefully) you should end up with a new (hopefully...) working version of your open source os of choice to play with!
IMPORTANT NOTE: If you have an almost standard system, the process should be reasonably straightforward.
If you have applied strong modifications to your /etc, probably you'll be asked many more questions regarding your config files.
In this case, take a more pragmatic approach and review your settings before just pressing "ENTER".
If bad stuff happens (well, sometimes it just happens!), install a clean (upgraded) system with the ubuntu official CD image and uncompress your home backup to your new system's home, restore your third parties sources.list and use the following commands to restore your synaptic selections:
sudo dpkg --set-selections < my-installed-programs sudo apt-get update
Then re-apply your changes with the follwing command:
sudo apt-get upgrade sudo apt-get dselect-upgrade
ADDENDUM: In case you wish to live on the edge and count all the developer's beans, when switching distribution, you may type:
sudo do-release-upgrade --devel-release
Once you're on it, you might as well create a launchpad account and submit bug reports to Canonical developers by clicking on the "Send"-button whenever an app crashes.