tl;dr: recommendations for data recovery software on a failing hard drive?
I have a PC with two drives, an 1TB HD with /home mounted on it and a 40GB SSD with everything else.
At some point working on a document, I had trouble saving it and the applications started to stutter. I immediately checked dmesg wich returned a bunch of errors so I proceeded to turn off the machine.
I disconnected the /home HD and I can boot in "emergency mode" as root. The relevant system logs ( # journalctl --since=2013-01-29 | grep sdb) show as much as 50 times per second the following lines:
sd 3:0:1:0: [sdb] Unhandled error code sd 3:0:1:0: [sdb] sd 3:0:1:0: [sdb] CDB:
Also, when it all started, there were a lot of lines mentioning
Buffer I/O error on device sdb3, logical block 7555XXXX
Where XXXX just kept increasing one by one.
Is that sure sign of a physical failure or can these symptoms arise from other causes?
As I am presuming a physical failure, I am planning to buy tomorrow another HD of the same size and try to recover the maximum possible amount of data. I have read on the Internet that the first thing would be to try to image it, maybe using several runs of an imaging software.
Do you know of a good software to do this type of work?
First: Boot from a live-cd, to prevent unnecessary mounting of your disks (System Rescue CD comes with ddrescue).
"dd" is usually recommended for imaging. However, you might want to take a look at ddrescue instead. ddrescue is more resistant to read-errors, and I higly recommend using its log-feature - Take a look at its homepage.
Here's a bit more about imaging hard drives with ddrescue.
NB: There is another program called dd_rescue, which I have no experience with.
Last edited by graph (2013-01-26 21:24:01)
This could be everything from HDD media failure through bad cable to SATA driver bug. Try running grep with some context (grep -A10 -B10 ...) and see if something more shows up. Run smartctl -a /dev/sdb and check SMART attributes and error log for anything suspicious.