Time Machine is one of my favorite Mac OS X features. Sure, it’s not loaded with features and customizability, but it works for the most part. Plus, it’s so easy to set up that it encourages the average computer user to actually have a backup. Anything that encourages backups is great news in my book!

But Apple recently rolled out a “Time Capsule Backup Update”, and included it in Mac OS X 10.6.4, that is causing confusion and concern. In the name of improving “the reliability of your Time Capsule backup,” this update has the unfortunate side-effect of detecting errors in existing backup bundles and forcing users to start a new backup. It happened with two of my Macs so far, so I was keen to find out what’s going on.
Verifiably Bad
Time Machine may look simple, but it’s an incredibly complex piece of software. It uses multiple kernel-level features and builds a complete files-level copy of your data in a “bundle” that acts like a virtual drive. Rather than storing files multiple times (which would be space-inefficient) or hard-linking them (which is efficient for space but would take a long time), OS X adds directory-level hard links, a fairly new concept. So if no changes have been made in your /Applications directory, it just creates a single link to a previous copy. OS X also includes a new daemon to monitor changes on a directory basis, which is also fairly cool in a geeky sort of way.
This intricate but powerful system can lead to trouble, however. If a backup process is interrupted while it is working, the relationships between directories, files, and dates can become corrupted. This is especially common for network-mounted drives, explaining Apple’s reluctance to allow non-Apple NAS units to be backup targets. But even local direct-attached drives can sometimes become corrupted over months of operation.
As (poorly) explained in Apple’s Knowledge Base article HT4076, corruption can cause previous Time Machine backups to be unavailable. So Apple introduced a more-robust mechanism to check backup integrity and rolled it out in Software Update and as part of OS X 10.6.4. It scans old backups and, if errors are found, flags them read-only and starts a new backup bundle. See this Apple Support Discussion thread and this web site for more information.
What You Should Do
Let’s cut through the confusion caused by Apple’s typical lack of explanation.
Should you install this update? Yes! Corrupt backup images are bad, regardless of the cause, and you need to know whether yours is good or not. Installing the update might cause you to start a new backup bundle, but at least you’ll know your data is safe!
Should you click “Start New Backup”? Not yet! If you see the dialog above, your existing Time Machine backup is corrupt, and you might not be able to recover data from it. But you can save a copy of the corrupt bundle and, perhaps, extract some data from it if needed.
Ask yourself if Time Machine has saved data you might need before deciding what to do next:
- If you are sure you won’t need anything backed up before today, click “Start New Backup” and let Time Machine do its thing.
- Otherwise, click “Back Up Later” and save a copy before letting Time Machine start a new backup. Just look for a file called “computername.sparsebundle” (for network backups) or “Backups.backupdb” (for local ones) and create a copy with a different name. You can open sparsebundle files with DiskImageMounter and browse them like any other disk. More information is available here.
There you go. If you click “Start New Backup” when you see this dialog box, Time Machine will erase all of your old backup data and start a new bundle. It won’t be corrupt, but it will be empty.
Note that you can manually initiate a Time Machine backup integrity check by option-clicking the “Time Machine” icon in the menu bar and selecting “Verify Backups.”
Stephen’s Stance
Backups are good.
Corrupt backups are bad.
Time Machine encourages backups, and works pretty efficiently, so it’s good.
This update ensures that Time Machine’s backups aren’t corrupt, so it’s good.
‘Nuff said.