I will SOON write up a document on this and on details about tuning Postgres, I promise. Maybe on the airplane back home on Sunday. Start a deluge of hate mail if I don't finish up in a week or two.
The sketchy answer is that I schedule a Tcl proc to run every night. I did it in Tcl rather than cron because my sitewide admin page provides a link to force a backup at my request - this is nice if backups fail for some (my old server hardware was flakey and needed the occasional reboot).
The same proc also ftp's the resulting files to a couple of different locations. Currently Irvine, CA and my home machine (the server's at an ISP in downtown Portland, OR).