On Mar 22, 2009, at 4:15 AM, Erik Boettcher wrote:
Indeed recreating seems like my only option now. I'd like to ensure
the right creation order, so I'd like to ask for some help. Attached
is the output of 'mdadm -Evvvv /dev/sd{a,b,c,d,e}3' Any help
restoring this array is greatly appreciated!
<mdadmEout>
I had the same problem recently and solved it relatively pain-free.
Basically what I did was:
*) Find out where the old superblocks are located and backup them with
dd, just in case. Ideally you should backup all of the disks entirely
(if they have errors, use dd_rescue and do the following on healthy
disks).
*) Recreate with mdadm and the same options that were used when
creating the raid in the first place, with one device declared missing.
"mdadm --create /dev/md0 -e 0.90 -c 32 -p left-asymmetric -l 5 -n 5 /
dev/sdc3 /dev/sdd3 /dev/sde3 /dev/sdb3 missing" sounds about right in
your case. I'd find out what the difference between 0.88 and 0.90
superblocks is, though. If you have devices with errors you should
declare the most broken one missing, of course. And make absolutely
sure that the options are correct or you will overwrite innocent data.
The device order is not so important, since you can change it in
subsequent recreate attempts without breaking anything.
*) Try to read-only mount the array, and/or use dumpe2fs (if you have
ext2/3). If it works, hurray. If not, recreate again with a different
device order. Ultimately you will probably have to e2fsck to correct
the damage.
I got the correct device order on the second attempt and lost only
150kB due to hard disk errors. Guess I was lucky.
--
Good luck,
Max.
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html