As a person that is called on to help update computer systems regularly, I can tell you, making sure data is preserved is no joking matter. You just try telling grandma that you laid waste to 5 years worth of grandkid photos and see how popular you are at Thanksgiving and Christmas.
In similar fashion, business users are none to happy with the idea of having to recreate data after an upgrade ... they are in business to serve customers, not computers.
So, a few tricks from the pros can keep you from pulling your hair out.
First of all, if you have a Windows operating system, look into buying a program that can handle copying your data from one version of Windows (say Vista) and restoring it to another (say Win7). Get an external (portable) hard drive (I prefer USB connected hard drives) and do your backups.
It is also helpful to keep your data in a logical fashion in a common set of folders (documents and settings). Some programs try to store their data in the program files folder, which, in my humble opinion, is WRONG. You should not be making backups of the OS folders (ie. c:\program files or c:\windows) with your data during the upgrade process, the OS files from an older version of Windows may render the new system unworkable.
Under Linux, user data is store in the /home folder. If joe, sue and bill all share the same machine, there will be home folders like:
So, backing up /home will get it all. No muss, no fuss, no special programs needed. In fact, if you take a bit of time during the install of Linux, you can setup the hard disk so that /home is in a "separate area" of the hard drive (called a partition) that will be preserved during an update. This does not eliminate the backup as a good idea, but, it will remove the requirement of having to backup before and restore after. If all goes well, the data will be in the same place it was before. Another nice thing about Linux, you don't have the permission or rights to store data in a place where programs are kept.
I normally "partition" my Linux system hard drives into three "parts".
| SWAP | LINUX | HOME |
I put the swap in first ... usually I make it twice the size of RAM ... so, if your machine has 2G of RAM, it would get 4G of swap partition space.
Next, I put the Linux partition, 10G is plenty for a normal user, and I have been using ext3 format for years with a smile on my face.
Next, I put the home partition, take the rest of the free space, format it ext3
Now, whenever I install from DVD, I can completely reload the Linux partition and the /home partition stays put ... with all my data and personal preferences in place.