I have recently changed the hard drive of my 5 years old T42 Thinkpad laptop. I had a 30 gb hard drive and that was obviously not enough to compile all the things I want to compile. Just to give an idea, I want to have xorg and nemiver jhbuilds as well as OpenEmbedded and OpenMoko builds around. If you add the fact that I use ccache extensively, I really needed more disk space.
So I went to memorysuppliers.com and ordered a hard drive of 160 GB. They did a very a good job in sending the disk very quickly. I backed up my home directory by simply using the excellent rsync program to save stuff on an external hard drive connected to the laptop via USB.
Then I followed the instructions here to remove the old disk and replace it with the new one.
After that, I just reinstalled a brand new GNU/Linux system and recovered my backed up data.
Everything went smoothly and took around 2h. Pretty neat.
I did also upgrade the ram to 2Gig a couple of months ago so compiling C++ programs is quite OK on this 5 years old machine now :-)