I’ve just lost lots of hours this week trying to rescue my boot firewire drive. It’s a notebook sized 2.5″ Drive in a sleek little aluminum Firewire 800 case from O’ToStore.
Apparently the drive has been failing for weeks and I just haven’t been noticing. Alas SMART does not work on Firewire drives or I probably would have noticed right away.
The cause of the failure? Bad sectors.
I normally backup my boot drive every week or so, but let it slip for a few weeks this time.
When I got around to making the backup using SuperDuper! (free edition, full backup), my backup failed on an I/O error. An I/O error is the equivalent of a bad sector.
Now I was really in trouble. My backup boot disk was shot as well. Strangely enough the original still worked well enough running the OS as long as I wasn’t trying to back it up.
Disk Warrior 3 was able to rebuild the directory successfully – the problem was not with directory structure.
At this point, I copied lots of my essential data off of the hard drive. The Finder also failed on large copies whenever it found a bad sector, so I targeted data folders for the most part.
Again, I started trying the different cloning tools.
I tried Carbon Copy Cloner. Same deal. I/O error stops ditto and psync (the two CCC copy engines – I tried both) dead in their tracks.
Now I started looking for software to repair the bad sectors. Absolutely nothing out there. Norton System Works apparently could do it. Drive10 and TechTool Pro can’t repair or map out bad sectors. Moreover, I’ve had TechTool Pro destroy whole disks it was supposed to be repairing in any case. Never again.
Finally I found Intech’s Media Scanner version 1. We got off to a good start, getting about 70% through the drive before the I/O errors started.
What I didn’t like about Media Scanner is that every I/O error would make my drive grind and wheeze as if it were about to fail imminently. Moreover, a single I/O error would cause about 20 seconds of this grinding, rather than just failing and moving on.
Intech quite rightly warns you that if your drive is reporting bad sectors because of excessive heat, improper mounting or marginal power you could render your drive permanently unusable.
So I looked for another solution. Somebody had some luck getting an antivirus program to come up with a list of all the bad files on a disk. Based on past experience with deep scans Virex and Norton Anti-Virus, that seemed a reasonable hypothesis. Neither of those products has a current Mac version so I tried Virus Barrier X. No dice. No list of defective files.
Here I decided to try and find another copy tool which could push through the bad sectors. I tried Intech Speed Utilities own backup engine. No luck either. Failure at the I/O error.
Having copied most of the files off I needed, but still short my main boot drive (I was already making the move to my backup generic 10.4 system I had created to try Adobe Lightroom), I decided to go for broke and run MediaScanner 2.1 throughout the entire drive, enabling autoreplacement. Unfortunately Mediascanner won’t automatically delete files with errors but instead writes replacement blocks into them.
Automatic file deletion is an option if you choose to run the product manually, but then you have to attend the computer: Mediascanner takes up all available cycles so running it in the background while you’re working is not a good option. Very sensibly, Intech have included a pause option so you can run Mediascanner while you are away from your computer and then turn it off when you have work to do and resume again when you go out for lunch or leave for the day.
After the better part of two days (outside of working time), Mediascanner managed to get through my hard drive three times (a normal run with no errors takes about 2 hours on 40 GB), reporting no errors in pass three.
There were still I/O errors while using SuperDuper!, so I gave Apple’s ASR (Apple System Restore) a shot from the Disk Utilities Utility. No dice.
More or less running out of hope, on an off chance I tried an old copy of Synchronize! Pro X which I’ve never before used for a bootable system backup. Synchronize! Pro X did give an option to not copy the bad file and to keep going.
Synchronize! Pro X only ran into about five I/O errors (MediaScanner had already deleted over 1500 bad sectors!) and was able to complete a bootable backup.
I was able to use that bootable backup to complete a Final Cut Pro project so the drive bootable backup made by Synchronize Pro X works. I was happy about that as working from my main boot disk of the last three years as that particular project requires some plugins which are installed on that drive but won’t be going into a fresh install as they render very slowly.
Personally I will be carrying on with my new 10.4.6 system (now that I’ve gone through the pain of the system upgrade, I may as well carry on from here), but I’ll be keeping the working copy of my 10.3.9 partition around just in case.
I have written to Dave Nanian at Shirt Pocket Software about the hard failure of SuperDuper! on I/O errors and suggested to him soft failure instead, like Synchronize Pro X, allowing the user to continue to rescue what he can of the disk (with bad sectors, this seems to be a great deal as only the data from the bad sectors is lost).
He wrote back to me that hard failure is intentional – a case of saving users from themselves. Earlier this year, Dave Nanian wrote an entire weblog post on the subject: Input Output Error Recovery.
I disagree strongly with Nanian and agree with Nick Matsakis’s comment on his own experience with SuperDuper! and bad sectors:
My process wound up looking like:
- Run backup
- wait 30-40 minutes for error
- remove/replace troublesome file
I had to iterate through this 3 times, I think, before the disk was completely backed up. I would have much rather SD just kept going and informed me of the problematic files at the end of the process.
Wolf Rentzsch ran into the same trouble I did and ended up using the command line dd tool to extricate himself. He documents both Retrospect and SuperDuper! failure to get through input/output errors. Rentzsch is a developer so don’t expect to be able to follow his instructions unless you are very comfortable on the command line.
Responding to Rentzsch, developer Alastair Houghton (iDefrag, iPartition) sides with Dave Nanian in wanting to protect users from themselves.
Guys – developers – this is what advanced preferences are for. I agree with the default configuration preferring to abort on an Input/Output error, throwing up an error message encouraging the user to backup all essential files in small batches as disk failure is imminent. But there comes a point where the experienced user just wants to get the job done and either have the drive fail or get all of his or her data off.
As a whole all of the backup solutions failed me in the face of Input/Output errors, apart from Synchronize Pro X and it needed InTech MediaScanner help to get the job done.
This should have been a lot easier and I again urge Dave Nanian to add the option for soft failure on I/O error to SuperDuper!.
I will be posting about backup strategies but here is my evaluation of existing Mac OS X backup and file synchronisation software out there. Also see Apple’s own official take on backup for OS X from their Developer Connection.