[clug] HDD Recovery Services recommendations ?

Andrew Janke a.janke at gmail.com
Thu Mar 1 19:13:42 MST 2012

>> and see if it's failing. Assuming it really is, then the GNU version
>> of ddrescue is the next step. Make sure you catch every byte, this
>> may be the last time that it mounts.
> Ah, thanks for pointing out ddrescue, my tools of choice had been dd and
> then testdisk, ddrescue will certainly be an improvement on plain dd.

A few "protips" from someone who has been down this path with varying
degrees of success a few times (for OTHERS! I might add, not me)

1. Organise first. Don't plug the borked drive into your computer
until you are ready to recover and have the spare space/capacity you
need. You may only get once chance.

2. I mean it, really, get organised. There is only so much you can do
with rescan-scsi-bus.sh and hot-plugging SATA drives in commodity
hardware. (incidentally this can be a good trick to stop a BIOS
rejecting a drive with bad SMART parameters). You will need 2x the
capacity of the disk you want to recover.

3. Plug the borked drive directly to a SATA port, USB external
controllers sometimes play funny stuff and also offline a failing
drive. Be sure to mount it properly so that it can dissipate heat, ie:
don't just hang it out of your case.

4. If running Ubuntu/any late distro, turn off all the stuff to
autodetect and mount drives (palimpsest, and friends).  I do recovery
from a console only machine, no X, no automount, no GNOME jiggery

5. Do NOT mount the drive, image it first. See #6

6. ddrescue is awesome, use it. Real the whole manpage. Be sure to use
a logfile so that you can attempt the recovery multiple times.

For the impatient (disk to rescue is /dev/sdb, recovery to image file

   # ddrescue /dev/sdb /mnt/somewhere-big/my-rescue.img

Then when it fails retry the dud blocks

   # ddrescue --try-again ----max-retries 10 /dev/sdb
/mnt/somewhere-big/my-rescue.img /mnt/somewhere-big/my-rescue.log

Beyond this, read the manual, it'll be worth it.

7. When you have a nice image file, make a copy of it. (yes, you will
need 2x the size of the disk).

8. Mount the image file as a loop device, run fsck on it.

9. mount various partitions.

There are a ton of guides out there for steps #7-#9.



More information about the linux mailing list