I got 12 hard disks from completely crashed server, some of them are failing, too. I successfully saved bit copy of all of them, even not always error free.
I found 512MB superblock on each end of disk starting with a word DSREGION. The 512MB of space is not heavily used and from some text fragments one can judge, that the built-in RAID controller was some LSI model.
The question remains: how can I assemble the RAID arrays using mdadm. How can I tell the mdadm where it can read the superblock while the command:
# mdadm -E /dev/loopX
does not detect superblock, even if DDF is set explicitly:
# mdadm -E -e DDF /dev/loopX
If there is a hint how to parse the 512MB superblock I can do the parsing manualy and then I can assemble the RAID arrays explicitly using
Or if there is a possibility to tell mdadm where it has to look for the superblock metadata.
P.S. I hoped I can find something useful at www.snia.org but did not find any detail.
You don’t use mdadm because it cannot handle this job. It has only very limited support for disks that were in hardware RAID arrays, to wit: DDF, and not everyone used that format.
Instead you should be using dmraid to attempt to explore and recover this array. It supports a variety of software, hardware and fake RAID formats. On a recent Linux system it will support:
$ dmraid -l asr : Adaptec HostRAID ASR (0,1,10) ddf1 : SNIA DDF1 (0,1,4,5,linear) hpt37x : Highpoint HPT37X (S,0,1,10,01) hpt45x : Highpoint HPT45X (S,0,1,10) isw : Intel Software RAID (0,1,5,01) jmicron : JMicron ATARAID (S,0,1) lsi : LSI Logic MegaRAID (0,1,10) nvidia : NVidia RAID (S,0,1,10,5) pdc : Promise FastTrack (S,0,1,10) sil : Silicon Image(tm) Medley(tm) (0,1,10) via : VIA Software RAID (S,0,1,10) dos : DOS partitions on SW RAIDs
Connect the copies of all the disks you made to a system, turn the computer on, and use
dmraid -r to see if a set of RAID devices was detected,
dmraid -s <set name> to get properties of the set,
dmraid -b to see the status of all block devices that may be part of a set, and if everything looks ok,
dmraid -ay <set name> will activate the RAID array.
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.