I have a server that runs a postgres database that contains about 200MB of data. Currently I have a cron job setup on my home computer which:
- ssh's into my server
- runs a remote script which makes a backup of the database
- scp's that dump over to my local hard drive for storage. Each dump is 20MiB.
- does this every six hours (one months of backups is roughly 2GiB)
The problem with this setup is that if my local machine goes down for whatever reason, no backups will be made. Also, I can't have the cron run from the server, because I can't have it scp'd to my local machine from my server (firewalls and all that crap).
My local machine is running Ubuntu 10.04, and my server is Ubuntu 9.10 server edition. I looked into Ubuntu One, but currently it's gui-only. I also looked into dropbox, but it's a pain in the ass to get setup in linux without gui support. Amazon S3 looks good but it's not free (yet dirt cheap). Is there any other alternative that I should look into?
I'd prefer something where I can just have my script dump the database into a directory, and have the backup service 'watch' that folder and sync accordingly. I can maybe also have my local machine sync to the cloud backup so I have even more redundancy, plus easy access to my backups for use in testing.
Edit: My server is a VPS, so what solution I end up using has to be 100% software based.