I need some help recovering data from a disk that I believe either is completely broken already or it will soon be.
It started when trying to browse a specific folder. When i ran "ls" in it I got "Input/output error" for all folders in it. I could not list anything within the folder.
I unmounted the hard drive immediately.
I noticed several rows with these in dmesg:
"[607277.950354] Buffer I/O error on device sdb1, logical block 23320"
"dd if=/dev/sdb1 of=/mnt/backup/location" gives me about 44kB and then it thinks it is done. The drive is 500GB and almost full. Only one partition.
Disk /dev/sdb: 500.1 GB, 500107862016 bytes, 976773168 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x000621d7 Device Boot Start End Blocks Id System /dev/sdb1 * 63 976768064 488384001 83 Linux
"sudo e2fsck -f /dev/sdb1" gives:
e2fsck 1.42.7 (21-Jan-2013) e2fsck: Attempt to read block from filesystem resulted in short read while trying to open /dev/sdb1 Could this be a zero-length partition?
Ran "sudo dumpe2fs /dev/sdb1 | grep -i superblock" to find the superblock locations:
Primary superblock at 0, Group descriptors at 1-30 Backup superblock at 32768, Group descriptors at 32769-32798 Backup superblock at 98304, Group descriptors at 98305-98334 Backup superblock at 163840, Group descriptors at 163841-163870 Backup superblock at 229376, Group descriptors at 229377-229406 Backup superblock at 294912, Group descriptors at 294913-294942 Backup superblock at 819200, Group descriptors at 819201-819230 Backup superblock at 884736, Group descriptors at 884737-884766 Backup superblock at 1605632, Group descriptors at 1605633-1605662 Backup superblock at 2654208, Group descriptors at 2654209-2654238 Backup superblock at 4096000, Group descriptors at 4096001-4096030 Backup superblock at 7962624, Group descriptors at 7962625-7962654 Backup superblock at 11239424, Group descriptors at 11239425-11239454 Backup superblock at 20480000, Group descriptors at 20480001-20480030 Backup superblock at 23887872, Group descriptors at 23887873-23887902 Backup superblock at 71663616, Group descriptors at 71663617-71663646 Backup superblock at 78675968, Group descriptors at 78675969-78675998 Backup superblock at 102400000, Group descriptors at 102400001-102400030
with "e2fsck -f -b 32768 /dev/sda3" if got further but after a while a lot of these showed up:
(when I started to get these errors it seemed that every block after this was listed but I did not get through all of them)
Error reading block <insert number> (Attempt to read from filesystem resulted in short read) while doing inode scan. Ignore error <<y>> ?
As a last sted I tried "dd if=/dev/sdb1 of=/mnt/backup/location bs=4096 conv=notrunc,noerror" but nothing was copied:
(also did not let this complete as I stopped it here)
0+0 records in 0+0 records out 0 bytes (0 B) copied, 20431.6 s, 0.0 kB/s dd: error reading ‘/dev/sdb1’: Input/output error 0+0 records in 0+0 records out 0 bytes (0 B) copied, 20431.6 s, 0.0 kB/s dd: error reading ‘/dev/sdb1’: Input/output error 0+0 records in 0+0 records out 0 bytes (0 B) copied, 20431.6 s, 0.0 kB/s
Any ideas what I might do to save any data at all? The drive is old. About 6 years so I guess it was about time to replace it. I can live without the data but it would be nice to get some back if possible.
Last edited by epaaj (2013-06-18 19:41:45)
Sorry mate, I guess you won't like it, but to me it sounds as if this disk was broken beyond (amateurish) recovery. If the data on it is really valuable, you might want to consider consulting a professional data rescue service, since any further attempt to recover data might contribute to further destruction of your disk. If the data is not really valuable (you do have a backup, don't you?), you could try and make ddrescue scraping together some data from the disk into an image file. This file will most certainly not contain a whole and sane file system, so probably some forensic tool like Sleuth Kit might help in rescuing some of your data...
Last edited by daemotron (2013-06-15 15:32:12)
“Some humans would do anything to see if it was possible to do it. If you put a large switch in some cave somewhere, with a sign on it saying 'End-of-the-World Switch. PLEASE DO NOT TOUCH', the paint wouldn't even have time to dry.” — Terry Pratchett, Thief of Time
ddrescue has now completed and it seems to have recovered most of the files although I have not checked everything. But at least I can browse the folders from the drive and I can read the files I've tried so far.
I guess this is as good as it gets and right now it seems that not a lot is missing, if anything. I'm starting to wonder if the disc really is broken, as I can now mount the drive again. But as dd did not work it cannot be anything I did to try to rescue it that changed anything, as I did not do anything after running dd except updating the packages on the system drive and rebooting.
I'll probably never know what really happened if no one else has any idea.