Amazon S3 (http://aws.amazon.com/s3/) is storage for the Internet. It provides a simple web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the web. It gives any developer access to the same highly scalable, reliable, secure, fast, inexpensive infrastructure that Amazon uses to run its own global network of web sites. The service aims to maximize benefits of scale and to pass those benefits on to developers. In short: it's a nice remote place to store your precious backups !
First, install these packages on your NAS:
ipkg
python
sudo
More information about this:
http://stam.blogs.com/8bits/2011/11/ssh-tunnel-with-synology-nas.html
http://stam.blogs.com/8bits/2011/11/how-to-run-python-27-on-synology-nas.html
Download the latest S3cmd (http://s3tools.org/download) and copy it to the public or temp folder on the NAS. At the moment, the latest version of s3cmd is s3cmd-1.0.1.tar.gz
Log into the NAS using SSH.
Bash commands:
cd /volume1/public
tar -xzf s3cmd-0.9.9.tar.gz
rm s3cmd-0.9.9.tar.gz
mv s3cmd-0.9.9 s3cmd
cd s3cmd
sudo python2.7 ./s3cmd --configure
You'll need your Amazon S3 public and private keys (you can get them here: http://aws.amazon.com/s3/)
Now, to backup the data of your NAS, create a bucket (http://aws.amazon.com/s3/#getting-started) and create a folder inside that bucket. Then, use the command line on the NAS (login with SSH and you're good to go):
sudo python2.7 /volume1/public/s3cmd/s3cmd sync --delete-removed --exclude '@eaDir*' --exclude 'Thumbs.db' /volume1/backup/ s3://<bucketname>/<foldername>/
If it doesn't work, maybe you can use Python 2.5, like this:
sudo python2.5 /volume1/public/s3cmd/s3cmd sync --delete-removed --exclude '@eaDir*' --exclude 'Thumbs.db' /volume1/backup/ s3://<bucketname>/<foldername>/
The contents of the backup folder on the NAS will be uploaded (synced) to the S3 bucket.
Now, you can create a cronjob on the NAS to automate your backups.
More information about that: http://www.google.nl?q=synology+crontab
After editing /etc/crontab, use the following command to restart the crontab daemon:
sudo synoservice --restart crond
sudo /usr/syno/etc.defaults/rc.d/S??crond.sh stop
sudo /usr/syno/etc.defaults/rc.d/S??crond.sh start
Further reading:
http://forum.synology.com/wiki/index.php/How_to_backup_the_Synology_Server_to_Amazon_S3