For Future Reference

I’ve been meaning to jot down a few notes on my new, “improved” backup strategy for a good while now, and I guess tonight’s as good a time as any.

Aside from work stuff, which I’ve (mostly) expunged from my machines except for the stray e-mail or overnight revision of some document or other, my needs and priorities are pretty simple:

  • Personal files are few and far between, but all my home machines are backed up via Time Machine to an external disk, with some caveats1.
  • Personal E-mail gets exported to an external disk and burned to CD or DVD on a quarterly basis.
  • Music gets stored on a central media server2 that has a “master” iTunes shared library and mirrored every quarter or so to one of the external disks.
  • Photos and home movies are stored in a “master” iPhoto library and almost obsessively mirrored to several disks. I also burn a few DVDs now and then, but I’m now at nearly 25GB, so it takes a lot of time and is also done on a quarterly basis.
  • This site (code and data) is replicated across nearly all my machines via Mercurial, so, in theory, it does not really need to be backed up. In practice, I occasionally do a full rsync over SSH to an external disk.

That’s the main stuff, and yes, I know I really ought to look into setting up some off-site storage for photos (even if it’s just a drawer someplace at a relative’s).

Automating this isn’t very hard (most of it is damn near trivial), but there are a few things missing yet.

For instance, it took me around a year to do something as simple as setting up rsync as a daemon to make it easier to mirror photos and music off the central box, even though the config basically boils down to this:

[photos] path = /Volumes/Pedestal/Pictures/Photos read only = True comment = Photos and camera media

[music] path = /Volumes/Base/Music read only = True comment = Music library

But most of the heavy lifting is already done – for instance, I now have a photo archival process that can be summarized as renaming all photos to a unique filename by dint of jhead, moving them to a YYYY/MM folder structure with some Python, and importing the updates to iPhoto, all wrapped in a neat Automator workflow3 that is triggered by a folder action script.

I simply take photos, import them to one of my machines, mess around with them, and when I’m happy with them they go into a file share – where that workflow picks them up, files them neatly and automatically makes them available on the network.

I’ve also been hacking away at a decent AppleScript for mass archiving and burning to DVD my e-mail, but it’s not really a priority – compared to the amount of stuff I get at work, personal e-mail is a drop in the ocean…

Anyway, there is plenty of “other stuff” that slips through the cracks, and I’ve decided to use Dropbox to implicitly “backup” a lot of it – stuff like scripts, mini-projects that I want to have constantly available on any machine4, etc. – all of it nearly infinitesimally small, utterly impersonal, and often ephemeral, and therefore perfectly suited to Dropbox.

Dropbox also keeps version history, which is sort of nice, but is free (as in “may vanish some day”) and doesn’t really help you get your data back if you make serious mistakes in some situations, so I “fixed” it – my mini explicitly keeps a running snapshot of my Dropbox on Time Machine.

None of this, of course, is a decent replacement for non-magnetic storage for proper archival, so I’ve been mulling the purchase of a Blu-Ray burner.

The LG BE06-LU10 has recently popped up under the Eur. 300 mark and is said to work fine from the Finder, so it might be the answer – although I’d prefer something smaller and slimmer, like a cross of the GBW-T10N with the GP08.

All I need is for the media to come down to sensible prices, since I can still burn 3 double-layer DVDs for one tenth the price of a single-layer disc – but let’s see what happens this Xmas, especially since the BE06 has since been superseded by the BE08

1 Besides some exclusions here and there, I use FileVault on all my laptops and keep wishing Apple would fix its utterly asinine approach at backing up encrypted accounts by simply making the daemon run under my user account and allowing me to have unencrypted backups, but that feels more and more like a lost cause, so I won’t really bother.

2 The mini is an amazing piece of work, and I’ve written about it “before”:blog/2009/03/16/2143.

3 You can get a generic, but equally effective version of the workflow on my jhead page. The current one has a few things hard-coded for my setup.

4 In case you haven’t read this, iDisk is still fundamentally broken for me for that and many other reasons, so Dropbox makes perfect sense, and has in fact already saved my bacon when one of my netbooks died.