Friday, January 17 2003

Spindles and Platters and Heads, oh my!

There’s a story I love to tell, a cautionary tale about an incompetent manager, his ass-covering sysadmins, and the company that they could have destroyed together. At some point I’ll write it up here, but the short version goes like this: “two-thirds of the file servers hadn’t been backed up in six months, and they knew this.”

In a corporate environment, backups are like electricity and plumbing. Ordinary employees doing their jobs just expect them to work. Flip a switch, the lights go on. Turn on the faucet, water comes out. Lose a file, get it restored. They don’t think about it. They don’t want to think about it. It’s Somebody Else’s Problem.

A common problem in the corporate environment is what to do about files stored on the employee’s desktop computer. Sysadmins tend to favor the Kleenex model: everything on your desktop is disposable, and if it ain’t on one of our file servers, it ain’t backed up. Unfortunately, in many environments it’s easier to store files locally than on a server, and users will reliably do whatever is easiest for them.

As dreadful as most corporate backup systems are, they look like precision-tuned machines when compared to computers in the home. Few people reliably make backups of their home computers. Damn few ever test the results to see if they can be restored. And yet the most important information about our lives is usually stored on these disks. No, not that saved Civ III game. Well, maybe sometimes.

Part of the problem is that the tools mostly suck. Part is that, just as at work, people want it to be Someone Else’s Problem, and take the easy way out. A lot of it is the fact that the relatively small amount of stuff that we really care about is buried under piles of crap that were installed by applications. Backup programs can’t really tell the difference, and not everyone puts their files where the OS vendor wanted them to, so the most practical solution is to back up everything, something that gets more and more tedious as disks get larger and backup media doesn’t.

A few weeks back, I woke up in the middle of the night, alarmed by the realization that I have more than three-quarters of a terabyte of disk space in my house, and my largest backup device is a 4.7-gig DVD-R drive. Then I remembered that most of that space was wasted, and went back to sleep.

The truth is that I don’t have much stuff that really needs backed up regularly. The scanned photos and MP3 files should be archived occasionally, because it would take a lot of work to recreate them, but they don’t change often, and I don’t need them every day. Lots of data, but no big deal to recover.

On the other hand, my email, address book, financial data, calendar, and sticky-notes are things that I’d be lost without, so they get backed up every day to one of the other computers in the house. Very little data, but a big, big deal to lose it.

There’s some stuff that’s in between, like the projects I’m currently working on, the things I’ve downloaded that I might not be able to find again (licensed shareware and ebooks, mostly, and it seems that “The Erotic Adventures of Buffy and Evil Vampire Willow” has disappeared from the web, making my copy of it precious), etc. Some of this should be backed up, some should be archived, but for now I lump it in with my weekly disaster recovery backup.

Reinstalling a computer from scratch is tedious and annoying, and I’d like to have disaster-recovery backups for every machine in the house, but two things have kept me from doing so: the first is that it’s almost as tedious and annoying to make the backups as it is to rebuild the machine from scratch, and the second is the sad truth that Windows and MacOS machines get crufted up so quickly that it’s in your best interest to rebuild them occasionally. Unix servers are less susceptible to this problem, but desktops running Linux and Mac OS X are closer to ordinary PCs than they are to servers.

My compromise is to make a bootable copy of my laptop’s disk once a week on a FireWire drive. After making the copy, I boot from it to make sure it’s good, and then store it in my safe (which not only protects it from fire and theft, but also makes it a lot easier to find around here).

Now that I have a decent Unix server in the house again (Shuttle SS51G running OpenBSD 3.2), I’ll be consolidating most of my scattered files onto it and exporting them back to the desktops. The laptop will continue to need its own copies of things, but I think that’s pretty well covered.

Of course, once all my eggs are in one basket, I’m gonna have to watch that basket.