Ack, I think I screwed up bad. I had a power failure on a RAID5 array which caused the metadata to be inconsistent between drives.

I followed the advice here except a case of fat fingers caused me to run the --create command without a missing parameter. Running the Perl script that permutates through the various combination leads me unable to mount an array. I have several questions:

  1. Am I totally screwed here, is there anything else I can do? The drives themselves seem to be fine. Does the missing parameter blow out any chance I have of recovering my data?

  2. Is there anyway I can get some data, but mounting the drives? I'm not that familiar with how data is striped across disks so I don't know if it possible to recover some files.

  • 1
    Degraded means it is still working, just without redundancy. – psusi Jan 21 '13 at 13:48
  • 2
    What is the output of cat /proc/mdstat? – Chris Down Jan 21 '13 at 14:48
  • 2
    If you still have all the disks in the array but one, the data is recoverable. To help you, we need to know the current state of the array. What is the output of mdadm -D /dev/md0 (replace md0 by md255 or whatever the appropriate number is)? What are the original components of the array, which ones went bad? – Gilles Jan 21 '13 at 21:53
  • It would also be good to know the event count of every member disk. So you should also post the output of mdadm -E /dev/sdXY for every member disk of the corresponding array. – teissler Feb 22 '13 at 13:02
  • Not necessarily, for RAID5 you have to have N-1 disks. So if your RAID-5 array was 5 disks, you need 4 of them to rebuild. RAID-5 can only handle one disk being – sparticvs May 23 '13 at 17:18

I'm sorry, but you've just hit the very common problem known as "write hole". In short words you do not have any chance to recover your array. More information on Wikipedia: http://en.wikipedia.org/wiki/RAID_5_write_hole

Expensive RAID controllers are equipped with batteries to avid this problem.

I hope you have a backup, that's the last chance of yours.

  • The write hole does not corrupt the whole array! – Totor Dec 6 '13 at 21:30
  • Right you are, it corrupts an area(s) of unpredictable size and location in the array. – Anthony Ananich Dec 7 '13 at 10:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.