I have Time Machine working nicely, making snappshotted backups on a regular basis. The backed up files are easily & quickly available.
I would like to make an offsite copy of these backups for ultimate safety. I already have a webhost (Dreamhost) with lots of available space. I'd like to find the best way to transfer these files.
Ideally, this system should as many of the following as possible:
- Fast
- Low-bandwidth
- Secure / encrypted on the remote end
- Preserving the various snapshots / versions that TM makes
- Able to browse the backed up files through standard UNIX shell commands (like "ls")
- Reliable: a broken remote backup operation shouldn't render the entire backup unusable
- Easy to set up
The ideal solution is to create a sparsebundle image and to sync that. This can be most easily done by sharing the drive over the network and pointing Time Machine to it and starting a fresh backup.
You can also find information on creating a custom sparsebundle to use as a Time Machine backup.
The reason to do this is because a sparsebundle stores its data spread over a collection of files (8MB 'bands'). If you have a sparsebundle, you can rync it to the remote server, and rsync can just transfer the bands that have changed. With Time Machine, you typically just append onto the end, so you'll only usually be syncing the last few bands up.
Once a given band is full and OS X creates another one, the now-full band won't be written to anymore. It gets copied up one last time, and never touched again. The new band gets copied every time rsync is run until it too fills up and stops being written to.
For extra fun, there are options you can pass to hdiutil to create an encrypted disk image, so that if someone breaks into your Dreamhost machine they won't be able to harvest your files.
So far, rsync looks like a pretty good solution:
I'm no rsync expert, but as far as I know it doesn't:
I'd appreciate any advice on replacement solutions or enhancements to rsync to solve these problems.
I'm not familiar with Dreamhost. Do you simply have a home directory and shell account? If so, I'd look into using PGP (or rather, GNUPG) to encrypt files/directories. There's a script for doing a recursive directory encryption with GNUPG, gpgdir.
If you have root access, you can use encfs. There's a guide for setting it up on Ubuntu.
For Dreamhost: what if they decide to lock your account (for abusing their Unlimited Policy) while you are restoring your data...?
For any online backup solution: what if you need to restore? How would you restore your system into a working state? And even when just restoring your documents and email: how much time would it take to download all? See also Best choice for a personal “online backup” in Europe on Super User for references to some test results on that.
Just for the archives: when not looking for an online solution (if you don't mind to carry the disk to some off-site location) then one can in fact use multiple backups disks as well. See macosxhints.com, 10.5: Use multiple Time Machine disks for redundancy (be sure to also read the comments).
You could try looking at services from MacMiniColo who also offer a remote time machine backup service.
Offers all you can offer from Time Machine + it is remote
We use
rdiff-backup
to achieve a similar goal with Linux servers.It may or may not solve your specific requirements, but it'd be worth investigating if you exhaust other avenues.
Time Warp backs up to Amazon S3.
This is a great solution in general. Unfortunately, it would mean that I'd have to pay for S3 storage (I have plenty of space on Dreamhost that I'm getting for "free" now) and I don't have linux command access (though an S3 access tool is nearly as good).
Perhaps they'll have an FTP/SSH option someday soon (or already?).