From Fedora Project Wiki

The focus here is on backup of a users home directory, since that is where all the important data lives. Important cases to consider here are:

  • Be able to restore your home directory on a fresh installation (eg. if your laptop gets stolen, or your harddrive breaks).
  • Be able to restore individual files to an older version if they get lost (the 'my paper is due tomorrow and I just ran rm -rf ~' case)
  • Have the ability to get regular reminders about doing backups, or do backups automatically.
  • Primary target would be writing backups to cd/dvd or some location on a local filesystem. Writing backups to a file server or some online location would be a secondary.

The is a Ubuntu blueprint for backup that is worth studying: