Because I write so much about backups, I try to keep on top of all the programs one can use to back up a Mac, and their ever-changing feature sets. While working on the recently released version 3.0 of "Take Control of Mac OS X Backups," I realized that the appendix in which I provided feature-comparison checklists was badly out of date, and that trying to update it as I'd done in the past was a lost cause - it would just be obsolete again a day later. So instead, I've put that information on a Web page, where I can update it much more quickly and easily than revising an ebook.
At the moment, this online appendix provides feature comparisons of 90 Mac OS X backup programs (not counting seven enterprise-oriented programs that I mention but don't describe in detail) - and I wouldn't be at all surprised if my list is still incomplete. Think about that for a moment. Nearly 100 different Mac programs that claim to have some type of backup capability. Incredible. To be sure, not all of them meet my criteria for a backup program, which is to say that some of them are incapable of producing either an additive incremental archive or a bootable duplicate - that makes them, essentially, "merely" synchronization programs (useful, just not the same thing as a backup). But still, when I saw that number I was truly astounded.
I'm all in favor of choice, but seriously... Mac users do not need this many backup options! Who has time to sort through them all, test them, figure out which program uses which terminology to mean what, and come up with a meaningful evaluation of what's actually useful? (Yes, I know, that's what I get paid to do, but I was speaking rhetorically.) What we need is a small number of excellent options. And yet, although my list of 90-plus programs includes some that are very good, there isn't a single one to which I'd give a perfect 10-out-of-10 rating, or even 9 out of 10. In my professional judgment, every backup program I've tried has room to improve - in some cases, significant room.
It is by no means my intention to diss all the world's Mac backup software. In fact, I can confidently say that, all things considered, the range of options available today is vastly better than what was available a year or two ago. All I'm saying is, despite the quantitative and qualitative increases we've seen recently, we haven't reached Backup Nirvana yet, and I'd rather see more work on the quality side than a greater number of so-so choices.
Backups Redux -- Still, what strikes me more than anything else about my revised list of Mac backup programs is how much activity (new programs and updates released) has occurred since the release of Mac OS X 10.5 Leopard. When Apple announced Time Machine, a lot of people worried that it would spell the end of third-party backup software for the Mac. On the contrary, just the opposite seems to have happened. The buzz surrounding Time Machine has helped to educate Mac users about the importance of good backups, and that has increased the interest in backup software generally. Inevitably, some people discover that Time Machine isn't what they need (or isn't all they need) and search for alternatives or supplements, and developers seem happy to jump on that bandwagon.
The people who create backup software are being more creative, too. Previously, I had divided my feature-comparison list into three main sections: programs that create archives, programs that create duplicates, and programs that do both; later on I listed things like synchronization utilities, version control software, and Internet backup services, which were outside the scope of what I considered core backup options. But developers, it seems, have not made it their top priority to preserve the tidiness of my lists. With wanton disregard for my carefully considered classification system and the number of table cells that can reasonably fit on a page, they've added novel features left and right, created programs that intertwingle categories in ways I'd never imagined, and otherwise altered the rules for creating backups. As a result, I've had to do a considerable amount of extra typing, copying, and pasting, with more undoubtedly to come. Thanks a lot, guys!
Current Trends -- It's still useful to think about archives and duplicates as separate, and essential, backup tasks. But beyond that, the range of ways in which backups can function is becoming much more interesting. I'd like to highlight a few of the recent trends I've noticed:
- Block-level incremental updates. Most backup software copies an entire set of files on its first run, and then on subsequent runs, incrementally updates your backup with just those files that have been added or changed since the last time. However, this can be a problem when the files are quite large (think of the disk images used by virtualization programs like Parallels Desktop and VMware Fusion, or Entourage's database file); because the whole file must be copied every time even a tiny bit changes, backups can take a long time and chew up tons of disk space. The effect is more serious if you're backing up over a slow network, or paying by the gigabyte for online storage. But now, a number of programs (including CrashPlan, MozyHome, and QRecall) can copy just the portions of files that have changed on subsequent runs - what's known as block-level updates. These can run much faster than file-level updates, and occupy far less storage space. The downside is that you absolutely, positively must be able to retrieve every single piece of a file, in perfect condition, when the time comes to restore it. If any corruption occurred during transfer or storage, or if the backup engine is unable to correctly reassemble the pieces for any reason, you could be completely out of luck.
- Duplicate filtering. Retrospect has offered this for years, but now more developers are catching on. To save even more time and storage space when creating archives, some backup programs (in general, the same ones that offer block-level incremental updates) check to make sure no data is duplicated at the destination. So, if you have two copies of a file on your computer, it stores just one (but remembers where both copies were). If you back up two or more computers to the same archive, and the same file appears on more than one, again, only one is stored. Some programs take this concept even further, eliminating duplicate data not just at the file level but within files - for example, if you have two files that have a 90 percent overlap in their data, only the different 10 percent of the second one will be stored.
- Schedule-free backups. What I'm now beginning to think of as old-fashioned backup software runs only on a fixed schedule (every morning at 3:00 AM, for example). Increasingly, backup programs do their thing continuously (or at least frequently) in the background, without requiring you to set up anything, and with very little system overhead. Time Machine, of course, runs every hour. CrashPlan Pro can detect when files change and back them up immediately (or after a delay you specify, such as 15 minutes). MozyHome lets you choose automatic backups, scheduled backups, or both. NTI Shadow lets you archive files every time they change, at a fixed interval (such as every 10 minutes), or as infrequently as once a week. Retrospect has a mode (called Backup Server) in which it runs as often as needed. Numerous other programs offer variations on this theme.
- Smarter scanning. When a backup runs, actually copying the files is only part of the process. Before the copying starts, most backup programs scan all the files you want to back up, comparing them with what's already in your archive to see what's changed, how much space will be needed, and so on. That scanning can take a long time, which in turn means the backup itself takes longer. One way to avoid scanning (or at least to speed it up considerably) is to use Leopard's FSEvents (file system events) notification system to determine which files have changed recently without a full, brute-force scan. Time Machine, Synchronize Pro X, and Synk (Backup, Standard, and Pro editions), for instance, all do this. Other programs, including SuperDuper, scan and copy in a single pass for greater efficiency.
- Hard links. Time Machine makes use of a clever Unix construct called a hard link to make a file (or folder) appear to be in many places at once without each copy taking up lots of space. With hard links, each incremental update can look and act exactly like a full copy of your files, even if only a few changed. Long before Time Machine existed, the command-line tool rsync (and its graphical variant for Mac OS X, RsyncX) could do the same thing. Now other backup programs, such as Intego's Personal Backup X5, are joining the party too.
- Online sync. Lots of backup programs (including CrashPlan, MozyHome, and steekUP) can send your data over the Internet to secure servers. But a new breed of programs is starting to combine online backups with multi-computer file synchronization and even online file sharing. Of course, .Mac members have always been able to use an iDisk for online storage and file sharing (albeit without the benefit of an encrypted connection), optionally adding backups using Apple's Backup or another program. Now, though, the landscape is changing even more. DropBox, still in beta testing, syncs local folders to online storage space. You can access your files - including old and deleted versions! - from any other computer, using the DropBox software or a Web browser. SugarSync also offers online syncing (prices start at $4.99 per month for 30 GB), but without storing old and deleted files. However, you could get the same end result by sharing the external disk on which your conventional archives are stored.
Trends I'd Like to See -- As delighted as I am to see progress and innovation in the world of Mac backup software, I'd like to see still more. In particular, there are a few areas that have received too little attention, and developers of backup software would do well to give them serious consideration.
- Amazon S3 support. Amazon.com's S3 (Simple Storage Service) offers capacious, secure, and reasonably priced online storage - ideal for backups. But Amazon doesn't supply any software. Although a few Mac FTP programs (such as Cyberduck, Interarchy, and Transmit) can access S3 storage space, the only serious option at the moment for backups to S3 is JungleDisk. Not only can JungleDisk mount your S3 storage space as a volume (which, in turn, another backup program could access), it's a full-featured archiving program in its own right. And, with the optional $1-per-month JungleDisk Plus service, it can even do block-level updates and resume interrupted transfers. (A program called Super Flexible File Synchronizer (SFFS), still at beta 1, also supports S3, though I can't yet tell how good it will be as a backup tool.) But whereas JungleDisk supports online backups only, I'd like to have a choice. I'd like to see existing conventional backup software upgraded to let users choose S3 as their destination as easily as they can now choose a hard disk or mounted network server.
- Better metadata support. Almost every Mac backup program can handle common pieces of metadata such as resource forks, file permissions, and Finder labels. But metadata comes in many shapes and sizes. What about access control lists (ACLs), or HFS+ extended attributes? And what about hard links, including those for folders (introduced in Leopard)? More than a dozen varieties of metadata can be set for a given file, and lots of current backup software ignores a good bit of it. The result is that what appears to be a perfect duplicate of your data might in fact be missing some important attributes. I've been using a command-line tool written by Nate Gray called Backup Bouncer to automate the testing of how well various programs handle these many sorts of metadata. Backup Bouncer doesn't yet evaluate every possible type of metadata, and arguably some kinds of metadata it does check are completely irrelevant in terms of backups, but it's still been tremendously helpful to have this automated testing tool. Note that, in response to some feedback I've received, I've recently modified the way my tables present the "scores" for metadata support. A much-less-than-perfect score is not necessarily a cause for concern, though programs with an "A" or "A+" (including, as you might expect, Carbon Copy Cloner and SuperDuper) do merit increased confidence for bootable duplicates.
- Better optical media support. All things being equal, I think it's usually best to back up to a hard disk rather than to a recordable CD or DVD. But optical media can be useful in some situations, such as when you're traveling, or when your budget doesn't permit the purchase of hard drives. Most Mac backup software has only minimal support for optical media - specifically, it usually can't split a backup across more than one disc (pretty important if you have individual files that are too big to fit on a single disc) or record multiple sessions on a given disc (even if there's lots of free space). Retrospect can do both of these things; so can Data Backup 3 (though it supports multisession recording only for CDs, not DVDs). A handful of other programs (including BRU LE, Get Backup, and Personal Backup X5), support disc spanning but not multisession recording. (In some situations, you can work around the lack of multisession support using a 15 euro [about $23] utility called BurnAgain FS that lets you add data to CD-R, CD-RW, DVD-RW, and DVD+RW discs in the Finder.) I'd love to see much more thorough and pervasive support for optical media in Mac backup software, including, naturally, full compatibility with Blu-ray drives available from FastMac and MCE.
- Better user interface. Whatever you may think of Time Machine's limited customizability or its 3-D outer space animation, it's at least clear that Apple put a great deal of thought into making a very complex process extraordinarily simple to set up and operate. At the other extreme, and without naming names, one of the most recent additions to my list has such an astonishingly complicated user interface, it makes Retrospect look like SuperDuper. The program in question is undeniably very powerful, but getting it to do anything interesting requires many highly unintuitive manual steps that almost make me feel as though I'm programming my own backup software from scratch. Far too often, a program's user interface is a mere afterthought, and in many cases, what you end up with is something that makes sense to engineers but not to ordinary folk. (That's true of all software, of course - not just backup software.) A good backup program need not look anything like Time Machine or SuperDuper, but as a user, I deeply appreciate any and all efforts to make software self-explanatory and obvious, to provide plain-English explanations and error messages, and to limit the amount of clicking I must do to accomplish simple tasks. Developers, if UI design is not your forte, hire a good designer, and have an outside firm conduct usability tests with, say, your parents as test subjects. You'll be amazed at what you learn. (This goes double for companies with cross-platform Java software, which tends to look pretty bad under Mac OS X.)
- Better logging and feedback. Adam Engst reminded me of another issue that afflicts many otherwise good backup programs. Anyone who's used Time Machine, for example, has probably noticed that sometimes the "Preparing Backup" and "Finishing Backup" stages of each hourly run take an inordinately long time, and that sometimes a lot more data is copied than we have any recollection of changing. Why? What exactly is going on behind the scenes? And when an error occurs, what's the problem, and how can I fix it? Figuring out what your backup software is doing shouldn't require advanced forensic investigation (see Matt Neuburg's "Time Machine Exposed!", 2008-05-08). Backup programs should provide clear, unambiguous feedback as to what they are currently doing (and how long it's expected to take), and log files should be both detailed and easily human-readable.
I have no idea how long my list of Mac backup programs will eventually grow, though I truly hope not to see too many more additions. On the other hand, at the risk of sounding like I'm encouraging feature creep, I also hope very much to see some of the existing programs evolve to be more powerful and flexible under the hood, while at the same time acquiring simpler, more intuitive user interfaces. And developers: bonus points if you can do all this without messing up my tables again!