0

I have problem with RAID5 failed. Intel Matrix Storage on Asus motherboard

The configuration was - 500 GB NON RAID (System C partition) - 1 TB - RAID 5 with 3 hard drive (System D partition) Main problem is that before failure - array was in rebuilding state. One hard drive failed, but all data are accessible.

After scan all hard drive with MHDD (disconnecting and connecting to another computer) the RAID show three hard drive as non member and one as RAID 5 failed array. I don't know why - I don't run these drive on other computer with other operating system - only MHDD.

  1. It's possible to recreate RAID 5 in CTRL+I Intel Matrix BIOS without lossing data?
  2. It's anybody known that create RAID5 init structure and always overwrite data?
  3. It's better to delete array and then try to recovery matrix?

I tried with TestDisk but it can't read 1TB partition.

Thanks for answers

Krystek
  • 11
  • 1
  • 1
  • 2
    Generally, recovery wouldn't be attempted in this case. The whole point of RAID is to minimize downtime. By trying to recover the data, you're increasing your downtime, defeating the whole reason you chose to use RAID in the first place. If you really want to do recovery, before you do anything else at all, image all three disks. – David Schwartz Mar 04 '16 at 08:28
  • So, I should try to recreate RAID5 in Intel Matrix, but if I recreate in diffrent order I will lost data? – Krystek Mar 04 '16 at 08:34
  • 2
    At your level of understanding I would suggest _you_ stop doing anything and get someone who knows what they're doing to do it for you. – user9517 Mar 04 '16 at 08:36
  • If not recovery and I don't have money for professional recovery what next? Should I try do recreate array and If it overwrite data hen recovery from raw image and try dffrent cases? Or what? – Krystek Mar 04 '16 at 08:48

2 Answers2

1

If MHDD has not altered any data on your disks, all that might have happened is that your disks are in "Foreign" state now after the Matrix POST routines ran without any disks connected and might have deleted the array from its configuration altogether. If you create a new VD now, your existing RAID configuration likely still stored on the disks will be wiped out. Simply re-creating a new VD would require the order of the physical disks in your RAID5 set right - something you probably cannot guarantee.

You should be able to use the "Scan Devices" option in the BIOS console to get the foreign VD listed, offering an option to import it. It also is a good idea to read the fine manual.

Apart from that, I do not know MHDD, but what I am seeing in my Google search results, does not look any good. An ancient DOS program implementing its own driver? Why didn't you stick with the disk manufacturer's diagnostic suite? Both, WD and Seagate, offer a decent set of utilities to diagnose possible disk problems in a non-destructive way.

the-wabbit
  • 40,737
  • 13
  • 111
  • 174
1

In case the-wabbit's answer doesn't work out...

You can do a dangerous recovery procedure to recover from this type of failure. This is dangerous mostly if you make errors, or if your firmware is not flexible enough (eg. like on a Dell MegaRAID once, I told it to skip initializing, but it initialized anyway, destroying the data). It is a general procedure that works with any hw or soft raid. And if this data is important, be sure to have backups first.

It goes basically like this:

  • put the disks in the machine in the exact same order as before; if you replaced a disk, eg. imaged it onto another disk, or added a blank disk, treat it like the old disk.
  • be sure the raid controller sees all the other disks. See the-wabbit's answer for dealing with foreign state.
  • make absolutely sure you remember the old setup: stripe size, offset, raid level, etc. (sometimes this is not possible... the raid utilities are extremely dumbed down and limited in hwraid)
  • delete the array (DANGEROUS!)
  • create a "new" array, with the exact same setup as before (DANGEROUS!). It is absolutely critical that you prevent it from "resyncing" or "initializing" the array... this means zeroing out all the data, destroying it permanently.
  • if you added a blank disk above, now remove that disk, so your array is degraded. And don't ever add it again, or it might try to rejoin it and merge its blank data into the array instead of treating it like a new blank disk. And don't do any writes with the array active before removing it.

Special notes: For softraid, you might be able to skip the silly blank disk steps (eg. with mdadm, write "missing" instead of "/dev/sdx" for one disk). And it's easier to use a read only + rw overlay image file to make it possible to retry and fail repeatedly without damaging things. If someone can think of an equivalent that applies to hwraid, that would be very valuable.

At that point it should be working like before... assuming you got lucky and your old hw and firmware is equivalent, old setup was understood and recreated properly, etc.. If it's wrong, it might be damaged now and harder to recover than before (like if metadata/superblock was written in a different place than before, this time over data), but in theory you can just retry again.

And also as a hwraid hater, I can't resist saying that hwraid can be very annoying, and having it just decide that some disks are "foreign" is totally normal behavior in some badly handled failure cases. eg. if you have it running, and then a bad cable causes a disk to disconnect, and then reconnect again, it might decide it's now a foreign disk. And on MegaRAID machines, I found it will always do this if you swap some disks, then boot, then swap them back. Unlike softraid, it seems to care about the order even for an existing array.

Peter
  • 2,756
  • 1
  • 20
  • 26