I have a few websites, hosted on other people's server. To ease my system admin maintenance task I am thinking about using scripts or software tool to do the backup automatically ( I don't want to manually click on a batch script or configure this and that every time whenever I have to do backup).
Is there any tools you can recommend?
Well, im in the same boat as you and heres what I am thinking about doing:
If the sites arent too big this should work pretty well.
It would be a lot more efficient to use rsync to backup only changed files. Backing up all files each time is slow and uses lots of space.
We use Duplicity software to store encrypted incremental backups on the rsync.net service. It runs from a cron job.
I wrote a system to do exactly what you're requesting. It'll allow you to backup sites over FTP or SSH/SFTP, and also supports backups of MySQL databases. Backup Machine automatically accesses your site on a daily basis, and incrementally backs up your files, encrypts them, and stores them with Amazon S3.
It's specifically designed for website owners who don't have full server access.
Dirvish is a wonderful tool for incremental backups, using rsync. Relatively easy to setup, and has all the bandwidth benefits of rsync.