Since starting graduate school, I’ve been trying to be better about doing regular, full backups. There’s just too many stories about people loosing years of their lives to crashes for anyone without a death wish not to at least try. It also has as much to do with the fact that, for the first time since I’ve been thinking about backups, hard drives are cheep, and hard drive based backups have become a reality. Which means I don’t have to backup 80 GB of data in 100 or 700 MB chunks like in the late 90s when I wasn’t good about backing up because I was never going to sit there swapping out that many zip disks or CDs.
Now with high quality external drives of 250 GB or more available for $130 or less, there’s no excuse. It helps that I use a laptop as my main computer so I’m stuck with smaller hard drives. Mallory’s internal hard drive is 100 GB and I have a 60 and an 80 GB external drive. 100 60 80=240 meaning that for now I can perfectly fit all of my data on my 250 GB backup drive even if I fill everything.
But there’s a problem. Just because storage is now economical doesn’t mean that backup software is any better. And backup software just isn’t something that I’m willing to give any slack. It had better work perfectly and every time or else there’s no point.
Retrospect got in my way, but I used it anyway
When I first got my backup strategy set up, I turned to Retrospect because it has long been the standard for mac backups. Unfortunately, I soon found that Retrospect is a kludgy behemoth that makes things way more complicated — not to mention slow — than they need to be. I don’t want to spend the time outlining all the problems I’ve had with Retrospect, but suffice it to say that it irked me from the beginning. Here are the highlights: There was never anything fatal, but it was slow: taking ages to scan through the volume before it would even start with copying. It would always create a startup item to help with scheduling whether or not I was using the scheduling capabilities, and it would do it without asking. My attempts at getting it to exclude certain file paths failed. No matter what I tried it would always copy the files anyway. It took forever to open up a backup and search for particular files to restore. And while I was about it, it displayed one of those niggling little problems that can just ruin everything: you couldn’t scroll through the list using the scroll wheel on a mouse or two finger scrolling on the trackpad. Grrr… And, worst of all, upon restoring subtle things would change, most obviously the modification date of all folders (but not files) would be changed to the date the restore happened, which I suppose is true from a certain point of view, but not how things should work. And because all sorts of things in OS X are folders even when they pretend not to be, that meant that lots of old files that just happen to be packages got reset to the same modification date, so I can no longer tell which one was most recently worked on. Not a big deal or something I depend on since the creation dates were still accurate, but like I said, I’m not willing to give backup programs any slack on these things.
The final straw was after Sasha and I switched over to Intel based machines. Over a year later and no universal version of Retrospect even on the horizon as far as I can tell. So why did I stick with Retrospect for so long? What I did get was a good deal of sophistication. I could save every snapshot state at the point of each backup so I could go back and get files from any point in the past since I’d started backing up (until I would run out of space eventually). Even better Sasha and I could back up to the same archive and it was smart enough not to duplicate identical files between us. Since most of the space is taken up with photographs and music that both of us share that means a lot of space saved!
Is there a better way? SuperDuper!
So what are my other options? Many people use a smart little application called SuperDuper for their backups. I’d known about it for a while as a solution to the problem that cloning disks went from trivial to not going from OS 9 to X. But their main selling point was making bootable backup copies and while I’m happy with the economics of getting one big drive to do all my backups, I don’t want to buy two of every drive I have to maintain clones. I want one big backup dump. Eventually I’d like to be able to move my one big backup dump to some kind of redundant network accessible storage. And I’ve got a collection of three drives and growing. I don’t want to have to back up each of them separately. It just won’t get done.
What I hadn’t realized is that SuperDuper has solved those problems! You can back up to image files which can be stored on a single large external drive, and you can make a schedule in order to do multiple backups in a row without coming back to the computer in between. Even better it’s smart enough to handle it when you schedule multiple things at the same time. It’ll just move on to the next thing as it finishes with the last one.
So viola, my brand new backup strategy:
SuperDuper is set to clone all three disks to images on my backup drive at 3:30 AM every night. If any drives aren’t available or if Mallory is asleep at the time nothing will happen, SuperDuper will just complain that it wasn’t able to backup because the drive wasn’t available. If only one isn’t plugged in, it’ll do the others just fine. I’d prefer to be able to make a single script that I could just click and walk away instead of automating it this way, but the effect is almost the same and maybe it’ll get me to do it more often. Besides I can simulate that behavior by unchecking a box to perform the backup automatically, leaving the backup action in the scheduled list but dormant. Then when I want to do the backups I can open up SuperDuper and check off the boxes and set the time for a minute from now and walk away.
So far, so good. I backed up everything last night without a hitch, although I did have a crash this morning when messing around with the setting some more. It didn’t seem to affect anything, though, and it wasn’t during a backup, so I’ll give it that one for free.
The advantages of this setup are that:
- SuperDuper is cheep. It’s only $30 and is available as a download. Any cheeper and I’d have an instinctive feeling that it’s development wasn’t being taken seriously enough (whether or not that’s rational).
- At least one person last year gave SuperDuper the highest marks for preserving mac metadata.
- The backups created are normal disk images which can be mounted in the finder, searched with Spotlight, etc., in order to find files to restore, and the whole thing can be easily restored using Apple’s Disk Utility.
- If I’m feeling flush at some point I can buy a new external drive the same size as my internal drive for a separate, bootable, backup of my startup drive to ensure no lost time in the event of a crash.
- In my initial tests it seems to be much, much, faster.
- In less tangible territory, SuperDuper is Intel native and feels completely mac like. It is well thought out, simple and focused, and doesn’t seem to spawn any specialized startup items (instead using, I assume, cron or launchd or some such build in technology that’s already there for that purpose).
What I loose is the ability to maintain older snapshots, which is a capability that I never ended up using, and the ability to copy files duplicated on multiple drives only once, which is not so much of an issue now that Sasha is in Boston and has her own backup drive.
Icing on the cake: My insomniac mac problems solved?
As I’ve mentioned before, Mallory (and Sayang, Sasha’s nearly identical MacBook Pro as well) has developed a problem where she won’t go to sleep when I close the lid after she’s been running for a while. I eventually gave up on solving the problem since she’ll always go to sleep when I put her to sleep manually. However when searching to figure out how to get the stupid RetroRun startup item to go away permanently (I still don’t know what was going on with that, since it wasn’t in the StartupItems folder but would come back on every restart anyway even though I hadn’t started up Retrospect.) I found a thread in the Retrospect forums where someone was asking the same question because getting rid of RetroRun was the solution to his identical problem. I haven’t tested it yet (it’ll take a few days anyway) but the timing would match up since it started happening to Sasha not long after she started backing up with Retrospect herself.
To get rid of the RetroRun startup item I first of all uninstalled Retrospect since I’m not using it anymore, just keeping a copy on my backup disk. Then I made an empty file called RetroRun in the StartupItems folder to fool retrospect into thinking that it had already installed the startup item should I need to start up Retrospect again for some reason:
cd /Library/StartupItems/
sudo touch RetroRun
The presence of the empty file doesn’t seem to do any harm.
Here’s hoping this solves all my problems!