Remarkably, there are many pitfalls in the tools currently available to back up OS X. I ran into difficulties with several recommended backup solutions, such as the popular Carbon Copy Cloner and others. After poking around the web, I found a shell script solution based on rsync that works fine for me.
Here's my version of it. It keeps two older backups, and uses hard links for all unchanged files to avoid unnecessary duplication. Edit it in the obvious way to put the backups where you want them. Also, you must run this script as root.
[robg adds: I haven't tested this one.]
Mac OS X Hints
http://hints.macworld.com/article.php?story=20070317132451657