Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

Click here to return to the '10.4: Recover a dead hard drive using GNU ddrescue' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
10.4: Recover a dead hard drive using GNU ddrescue
Authored by: johnsawyercjs on Sep 06, '05 07:49:27PM

The publisher of Diskwarrior, Alsoft, claims that Diskwarrior's directory replacement process won't wipe the old directory until it's successfully written the replacement directory (unless there isn't enough free space for the replacement directory, in which case Diskwarrior will write over the old directory, which can be unsafe if there's a power outage, a crash, etc.), but sometimes, especially on drives that have bad blocks, this guarantee doesn't hold up. Whenever you see Diskwarrior report "Speed inhibited by disk malfunction", it means the drive has bad blocks, and you shouldn't let Diskwarrior try to replace the directory--as mathias01 says, use Diskwarrior's Preview option to Finder-mount the results of Diskwarrior's scan, and copy your files from that preview volume to a backup drive.

The commercial utility "Data Rescue", from ProSoft, will do essentially what Bruno's hint describes, with a convenient GUI--it will scan the whole hard drive for files, and if it encounters a bad block, it will spend a reasonable amount of time retrying to read the block, and eventually will give up and go on with the rest of the drive. It doesn't spend too much time trying to read a bad block, but if the drive has a lot of bad blocks, it can still take many hours or even a full day (or longer). If the command line utils described in this hint let you change the amount of time spent retrying bad blocks, that would sometimes be very useful, since usually a bad block can't be read no matter how many times the utility tries, but as Bruno describes in his hint, sometimes letting the util keep trying is a good thing, since his drive had around 3000 problematic blocks, but only 900 had completely died--the utility may have been able to get data from some of the problematic blocks because it kept trying to read them.

The feature of ddrescue that lets you stop its scan, and resume it later using the log file it generates, sounds pretty handy--I don't think Data Rescue has that feature, and I know Diskwarrior doesn't.

[ Reply to This | # ]