A few months ago in TidBITS I compared the various disk repair programs then available for Mac OS X: Norton Utilities 8.0 ($100), DiskWarrior 3.0 ($80), Drive 10 1.1.4 ($70), Disk Guardian 2.2 ($70), and Apple’s Disk Utility (free). See "Shootout at the Disk Repair Corral" in TidBITS-707 for the full details.
But I missed Tech Tool Pro. Micromat had announced TechTool 4 at Macworld Expo San Francisco in January 2003 for $100, but had not yet shipped it nine months later when I wrote the comparison. I didn’t want to review TechTool 3, knowing it would soon be out of date. As luck would have it, version 4 finally shipped just as TidBITS published the article.
In my previous comparison of disk repair utilities, I created 13 different HFS+ disk images, and damaged a different part of the disk on each one. I then duplicated each damaged disk image for each disk utility. I repaired one set of damaged disk images with each disk utility, and recorded how many images were repaired correctly, and how many still had errors, or had lost data. I did not test any of the other features of the disk repair programs. The descriptions of each error are abbreviated here; for more detail see the original article.
I used the same methodology here as in the original comparison. Using Tech Tool Pro 4.0.2, I attempted to repair the exact same disk errors that were used in the original review. Do note that I’m not reviewing any of the other features of Tech Tool Pro beyond its capability to repair damaged disks.
Free Advice — A disk repair program can fix many things, but when you drop your Mac in a swimming pool, leave it in the back of a taxi, or lose it to a light-fingered burglar, the only thing that helps is having a current backup copy of your data. If you don’t have a current backup, make one today.
Also, if you are using Mac OS X 10.3 Panther, use Disk Utility to turn on journaling. Journaling enables Mac OS X to fix certain kinds of damage automatically, before you even notice a problem exists.
Bad Sector! Bad sectors are a common problem and can occur when a sector on the disk becomes unreadable, either due to damage to the disk surface, or because the data on the sector becomes scrambled. Although the data will be toast either way, it’s relatively easy to repair the disk. In the first case, the bad sector is replaced from a set of spare sectors the disk maintains. In the latter case, new data is written to the sector, replacing the scrambled data. In either case, the original contents of the sector are lost.
Using a special tool, I created bad sectors with scrambled data. (I had to perform this test on a real disk.) Tech Tool Pro detected the bad sectors, but couldn’t fix them. It also didn’t say which unlucky files contained the bad sectors, so it doesn’t give you any hints as to which files are damaged. This result puts it on par with Drive 10 and Disk Guardian. Disk Utility, Norton Disk Doctor and DiskWarrior didn’t even detect the bad sectors.
It’s fairly easy to fix bad sectors on modern disks, and its not that hard to find out which file contains a bad sector. I’m surprised no disk utility has mastered this trick yet, since it would give them a distinct advantage.
Directory Destruction — All the remaining tests involve damage to the various data structures that Mac OS X uses to track where your files are located on the disk.
The allocation file tracks which blocks on the disk contain files, and which are empty. Errors in the allocation file are not uncommon. Tech Tool Pro repaired a damaged allocation file easily on my test disk image, as did all the other disk utilities.
The volume header is a guide to all the other important structures on the disk. Without it, you can’t find the allocation file, the catalog file, or any of your files. Erasing the signature in the volume header makes Mac OS X declare the disk corrupt, and refuse to mount it. Tech Tool Pro fixed this problem quickly, as did the other disk utilities.
The catalog is the single most important data structure on an HFS+ disk. It tracks all your files and folders. I erased the first node of the catalog, a devastating error. Tech Tool Pro repaired it properly, joining Norton Disk Doctor, Drive 10, and DiskWarrior and leaving Disk Guardian and Disk Utility behind.
The catalog file (and the extents file as well – more on the extents file later) contains a map that records which nodes are in use, and which are free. After I damaged this map, Tech Tool Pro repaired it, just as all the other utilities did.
The catalog file is set up in a tree structure: branches link together the various file and folder records in a strict order. If the links are damaged, you won’t be able to find certain files or folders. Damaged links are one of the more common forms of catalog corruption. Tech Tool Pro repaired this damage perfectly. DiskWarrior, Norton Disk Doctor and Drive 10 also fixed this, although Disk Utility and Disk Guardian couldn’t.
The file and folder records in the catalog are maintained in a specific order. Just as with a library card catalog, if the records lose their order, finding the file or folder you want becomes impossible. Tech Tool Pro fixed this problem, and although it mangled one file name, the data inside the file was fine. All the other disk utilities also handled this error.
Certain characters are illegal in file names, including colons and composed Unicode characters (don’t ask). Although Tech Tool Pro found the illegal colon in a file name, it didn’t manage to fix it. Only DiskWarrior and Norton Disk Doctor fixed this error.
The catalog file is divided into nodes, and the nodes are divided into records. A record stores information about a particular file or folder. At the end of the node is a map which points to each record. If the map becomes corrupt, you can’t find the files and folders in that node. Tech Tool Pro managed to fix the mangled map, but in the process it lost five files. Drive 10 and Disk Guardian also lost five and six files respectively fixing this error. Norton Disk Doctor and Disk Utility didn’t manage to fix it. Only DiskWarrior fixed the damaged node map properly.
Threads are special records in the catalog, used to look up folders and resolve aliases quickly. By damaging a thread, I created two problems: the damaged thread record itself, and a broken alias that no longer had a corresponding thread. Tech Tool Pro fixed both problems. Norton Disk Doctor, DiskWarrior, and Drive 10 also succeeded, while Disk Guardian and Disk Utility failed.
A dangerous situation – called either "overlapping extents" or "cross-linked files" – occurs when the file system thinks two files occupy the same space on the disk. One file (at least) will be overwritten. I extended the length of one file to overlap the beginning of the next file. Tech Tool Pro managed to separate the files without losing any additional data. DiskWarrior, Norton Disk Doctor and Drive 10 fixed my cross-linked files as well, although Disk Utility and Disk Guardian didn’t.
No One Expects the Spanish Inquisition — So far, Tech Tool Pro had done well. The time had come to bring out the comfy chair.
When a file is badly fragmented, it breaks into too many pieces (called extents) for the catalog to keep track of them all. The additional pieces are tracked in a special file called the extents file. Using a custom tool, I fragmented all the files on the test disk. Then I damaged two of the extent records. Tech Tool Pro detected the problem, but couldn’t fix it. Disk Utility, Drive 10 and Disk Guardian couldn’t fix them either. DiskWarrior and Norton Disk Doctor put everything right.
HFS+ volumes are enclosed in a wrapper, which is a relic from the old days when HFS+ was new. For Macs that didn’t know about HFS+ in their ROMs, the wrapper provided a bootstrap that let them boot from an HFS+ disk anyway. The wrapper has its own small but complete HFS (not HFS+) file system. So, I damaged the wrapper’s catalog file. Tech Tool Pro didn’t notice that anything was wrong. It’s not alone; only Norton Disk Doctor fixed this obscure problem.
Some people put several partitions on a hard disk. The partition map tracks the various partitions. I damaged the partition map. As with the bad sectors, I performed this test on a real hard disk, since disk images don’t have partition maps. Tech Tool Pro didn’t detect the problem. Of the other utilities, only Norton Disk Doctor even noticed this problem, although it couldn’t fix it.
Finally, instead of testing errors individually, I created a disk image with a slew of problems. I messed with the headers in some nodes, the records in various nodes, and the maps in some nodes. Some nodes got hit with all three bits of nasty corruption. I did this in both the catalog and extent files. It took Tech Tool Pro three tries, and on the third try it hung, but it finally did put the disk back together. However, about 50 files were missing. Considering the level of damage, Tech Tool Pro acquitted itself well enough. Only DiskWarrior handled this serious situation better, fixing the disk and losing fewer files. The other utilities tried hard, but as with the king’s horses and the king’s men, they simply couldn’t put Humpty Dumpty together again.
Of the 15 damaged disk images, Tech Tool Pro repaired 9 of them perfectly or well enough, and did pretty well on the last disk. That stacks up against DiskWarrior with 12 fixes, Norton Utilities with 11, Drive 10 with 9, Disk Guardian with 5 and Disk Utility with 4.
Micromat says that Tech Tool Pro and Drive 10 (also from Micromat) share the same repair engine, so it’s not surprising that the two programs scored nearly identically.
Although TechTool Pro acquitted itself fairly well, joining Drive 10 in the middle of the pack, I stick with my earlier recommendation for dealing with damaged disks. Try Apple’s Disk Utility first (since it’s free and isn’t likely to create any additional problems), and if Disk Utility fails, hand the damage over to DiskWarrior, which has the best chance of fixing whatever ails your hard disk. And please, keep good backups!
[David Shayer was a senior engineer on Norton Utilities for Macintosh 3.0, 4.0, and 5.0. Before that he worked on Public Utilities, a disk repair program that won the MacUser Magazine Editor’s Choice Award, and on Sedit, a low-level disk editor.]
PayBITS: If David’s detailed and expert testing told you which
disk utility you should rely on, reward his efforts via PayBITS!
Read more about PayBITS: <http://www.tidbits.com/paybits/>