My back-up script is attached.
Here's what it does:
mounts a partition on a different drive.
* back-up of webwork data, and courses (files from the webwork distribution are not backed up)
* back-up of the /etc directory
copies files to the mounted partition and names them by the day of the week. Then unmounts the partition. They will be overwritten the next week. On the first of the month a file named by the month is created. This file is overwritten after a year. This means that I always have back-ups from the last week, and from the last year.
Back-ups files are also copied nightly to another server in another building.
In addition to these back-ups, I do a complete backup every 3 years or so after I have installed a new version of the operating system. For this, I use fwbackup