Page 1 of 1

Recovering files from a damaged software raid

Posted: 29 Sep 2012, 16:25
by dhitchcock
* I'm cross posting in the Partition Recovery forum, because I'm desperately trying both.

I have 3 1.5TB drives in a Linux software raid 5 array. While I was copying files from it, I started getting I/O errors and discovered the array had dropped to only one drive. There doesn't seem to be anything wrong with any of the drives, so I re-created the array fine, but the filesystem is damaged,

fdisk -l /dev/md0 : Disk /dev/md0 doesn't contain a valid partition table

When I run photorec, I thought I was saved because it began finding thousands of files, mp3s, pictures. The problem is the files were all garbage, they were tiny pieces of files with obfuscated file names. I can tell my data is still in there somewhere, occasionally there's a file that's small enough that I'm guessing it didn't get split over the drives, like a small little jpg that's an album cover, that tells me my data is still there! But photorec can't seem to piece the files together properly. Is there anything I can do to help it piece the files together better?

I didn't save the session file, It ran for like 12 hours and said it was going to have to run for like 30 more, but since all it was doing was turning up junk I cancelled it. But if there's any information that might be helpful in that file, I can start it again.

Re: Recovering files from a damaged software raid

Posted: 30 Sep 2012, 10:55
by cgrenier
There is no partition table on /dev/md0, it's normal and it's why fdisk failed.
Run "fsck /dev/md0" instead to check the filesystem.

Re: Recovering files from a damaged software raid

Posted: 30 Sep 2012, 16:54
by dhitchcock
Oh I have, I've tried everything. I've googled and googled and googled...

fsck says:

Code: Select all

fsck.ext2: Superblock invalid, trying backup blocks...
fsck.ext2: Bad magic number in super-block while trying to open /dev/md0

The superblock could not be read or does not describe a correct ext2
filesystem.  If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193 <device>
And I've tried the use-backup-superblock plan:

Code: Select all

mke2fs -n /dev/md0
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
	102400000, 214990848, 512000000, 550731776, 644972544

Code: Select all

e2fsck -b 32768 /dev/md0
e2fsck -b 98304 /dev/md0
...
e2fsck -b 644972544 /dev/md0
No good.. I've also scanned it with gpart, that didn't work, and I've scanned it with a demo of RStudio, which was having about as much luck putting together files as photorec was but it did see in the results that it came across some Superblocks, so that got my hopes up slightly. But I couldn't find those superblocks with fsck, or they're just all corrupt I don't know.

Re: Recovering files from a damaged software raid

Posted: 12 Oct 2012, 21:19
by cgrenier
Run TestDisk, partition type: None, Advanced, set the type to ext4 if necessary, SuperBlock. It should give you some valid parameters for fsck.ext4.