[TriLUG] getting dd if=[flaky device] to ignore read errors
brian at strutmasters.com
Mon Jan 22 17:03:01 EST 2007
I have a failing hard drive. Yeah yeah, I should have backed it up.
That's another story. Anyway, I have a replacement on the way (should
have arrived today, in fact). I have some recovery software (OnTrack
EasyRecovery 6.0 Professional), but it wants to segfault during the
drive scanning process. I believe the segfaulting is due to the bad
drive doing something wacky. So here's what I want to do [it's one big
- Make a bit-for-bit copy of the old drive (or at least, the sectors its
failing controller will still let me access...so far, a majority; there
are just unrecoverable errors that happen to fall in the MFT area) onto
the new one
- Let EasyRecovery scan the new one, hoping that the 100% working drive
will let ER recover what it can of the broken data.
So that means I need a utility that will do a low-level copy from one
device to another. dd comes to mind immediately. But in looking
through the info, I'm not seeing any documentation on how to get it to
ignore read errors. I don't care what garbage data goes into the output
byte when the input byte is unreadable; I just need the garbage to be
there so the data stays the right size.
Is dd the tool to use? Do I need to write my own low-level program to
do it for me? I'm really not concerned about recovering from the worst
of the damage; I just want to recover whatever I can. Without spending
a buttload of money, of course.
Thanks for all input!
Brian A. Henning
More information about the TriLUG