Wednesday, December 2, 2009

Trying to recover data from a failing hard drive

My brother in-law asked me to take a look at his girlfriends computer (a laptop) that wouldn't boot up. Quite soon it stood apparent that the computer failed to find a bootable hard drive. I had a similar issue after trying to install Fedora 11 on my laptop.
This issue, I found out, had something to do with the SATA controller being set to AHCI- or Legacy-mode. I got my drive bootable again by fiddling with this setting a couple of times and rebooting the computer. When I got the drive to boot again, I set it to AHCI-mode which is the default.
But that was my fully operational drive, not the one in question here.

Trying it on another computer

This drive wouldn't even show up in BIOS. Since it is a laptop there's really not much I can do but remove the drive and hook it up to another computer. So I bought a SATA/IDE adapter kit from Deltaco, a small device that let's me connect any 2.5" and 3.5" PATA or SATA drive to a USB-port.
I hooked the drive up and connected it to my own laptop. I could hear the drive spin up and make some other noises before it showed up in both Windows Vista (not as a regular drive, but visible in the administrative tools disk management) and Ubuntu Linux. Since it's far easier to find freeware resuce applications under Linux I went with Ubuntu.

Tools of rescue

From what I found from googling hard drive resuce under linux there seemed to be two main applications to use. GNU ddrescue and TestDisk both available in the default Ubuntu repositories under the names gddrescue and testdisk.
First it gave TestDisk a try, but since it didn't even list the drive I resorted back to a tutorial on the TestDisk site on how to recover data from a damaged hard disk using GNU ddrescue. But unfortunately this seemed to have quite little effect. All I got was that the rescue was done but no data what so ever was copied. I tried fdisk, cfdisk and gparted to access the drive directly but all of them reported failure. As I'm writing this I'm starting to wonder wether or not the "visible" drive is in fact the USB-controller and not the drive itself? (edit: It is!)

The last resort: Stick it in the freezer
So now I was stuck with the quite annoying feeling that the drive was broken beyond my ability to resuce it. And I wanted so to be the hero here and let the others bask in my geeky glory. However after a good nights sleep I started to recall another more unorthodox way of getting data from a failed drive by sticking it in the freezer.
Again I went to the great oracle of google and found many different success testimonials using this procedure. The important part seemed to be to protect the drive from moisture by bagging it in a zip lock bag before sticking it in the freezer. There were also some methods involving sticking the drive in the oven to dry it out then freezing it again, but that seemed a bit to tedious.
To protect the drive from static I first put it in a anti static bag then in a plastic freezer bag (I guess that's the swedish equivalent to a zip lock bag, minus the zip lock) then I sucked all the air out of the bags, just like my mother tought me to do when freezing freshly baked bread. Then I took another freezer bag and put the bagged drive in and sucked the air out of that one too. Then it was freezer time for the drive. My freezer is set to - 18 °C and the drive will be in there for about ten hours before I do the first test.

Conclusion
Well the freezing didn't help. My guess is that it is a mechanical problem and the only hope now is to pay the big bucks to get a specialized disk recovery firm to take a look at it.