I've just installed S3fs as per
this article on the Linode Wiki and got one of my
Amazon S3 storage buckets automatically mounting as a volume on my Linode.
Now I'm wondering; Could I use this bucket [in its guise as a volume on my Linode] as a destination for backing up my laptop at home? I'm thinking something along the lines of a cron job using rsync [or similar] to ssh into my linode and make an incremental backup to the mounted S3 volume. As I said, I'm a bit vague on some of the nitty-gritty details and security implications, so any thoughts gratefully received. Here are some of the issues I'm thinking about so far:
1: Security: How secure is the mounted S3 volume from outside access? The wiki article instructions mount it as root and it's outside the obvious publically accessible parts of my Linode, but I'm not quite clear on how easy it would be for some ne'er-do-well to access such a mounted volume on my Linode
2: Sync'ing: I've not used rsync before and my reading is turning up contradictory opinions as to its suitability for this kind of backup; some people claiming that rsync cannot do block-level synchronisation, if the backup is encrypted [which obviously it would have to be] and other people claiming it can
3: Speed: I'm presuming there would be a performance hit, given that any such backup would be sending data from my laptop to my Linode, which would then in turn be sending that data onto S3. The question is, would the convenience of having an S3 bucket mounted as a 'regular' volume, rather than having to deal with Amazon's proprietory API and data format outweigh the inconvenience of the slower access?
4: Bandwidth: Piping everything to S3 via my Linode will obviously involve using a fairly huge chunk of bandwidth for the first backup but, assuming some block-level sync'ing mechanism can be put in place, subsequent backups shouldn't be too hungry, should they?
I'm currently using
Jungle Disk to do my backups to S3 [I was lucky enough to get in early and buy a lifetime license, before they started charging for everything in sight] but, especially given that JD uses proprietory encryption and data storage methods, I'm a bit concerned about the long-term viability of this setup. I'd much rather try and 'roll my own' in some way. I did check out
SparkleShare but I got put off by the fact that it uses the
mono framework, which is an implementation Microsoft .NET
[shudder!]
Any thoughts?
_________________
**************************
Mental Diarrhoea**************************