Jump to content

Re-adding parity drive with known correct data


JimBob

Recommended Posts

Posted

Hi,

 

I recently experienced a HBA failure that caused a bit of havoc on my array, causing one of my parity drives to fail, and one of my data drives. At first I did not realize this was a HBA issue and attempted to rebuilt the data drive off my existing working parity drive, then once that was done rebuild my 2nd parity. This did not work

 

The issue I then ran into was the whole HBA failing causing write errors to all drives, before I could rebuilt my failed data drive and then rebuild my second parity. I have now replaced the HBA with a working one but my once working parity drive, with correct parity information, is now showing as unassigned.

 

"Screenshot" of my array before the total failure, with a failed data drive and a failed parity. This is where I attempted to rebuild my data drive then my parity off my working single parity:

 

 

20180206_155017.thumb.jpg.bce3e0761b20108c86b499bd12043b69.jpg

 

 

Screenshot of my current array status now I have my new HBA:

 

5a79cf5778452_Screenshotfrom2018-02-0615-51-13.thumb.png.a754b9c1fa166b035a3f4ad4aefe2494.png

 

As you can see, my previously valid 10TB parity drive, ending in 1DB is now unassigned. meaning I have no parity data to rebuild my data drive off.

 

My hope is, can I tell unraid that the data on the parity drive 1DB is, in fact valid and to add it to my array without wiping the parity data, as that is currently the only drive I have that has valid data on it so I need that to rebuild my failed data drive ending in 2Y9.

 

Is this possible? Or am I out of luck having both parity drives down and 1 data.

 

Hope this makes sense, if not I'm happy to explain more.

 

Thanks!

 

 

  • Replies 76
  • Created
  • Last Reply
Posted

There's a way but it will start rebuild and overwriting disk5 at array start, is disk5 a new disk or the existing old disk? If it's the old it might be best to do a new config to re-enable it, assuming no new data was written once it got disabled.

Posted

Disk 5 is an old disk, but currently has no data on it as it was mid rebuild when the HBA failed first time.  I think when it was disabled at forst and running emulated, some data was written to it. If i do have to start afresh with that drive, losing the data I can get the data back by other backups of mine. Just thought best to see if I can use parity.

Posted

You should be able to go to Tools - New Config. There it will let you change any drive assignments, including assigning that parity drive. Then when you go to start the array there should be a checkbox you can check to tell it parity is valid.

 

After that, you should be able to get it to rebuild disk5 by stopping array, unassign disk5, start array, stop array, reassign disk5, start array to rebuild.

 

But your 2nd screenshot seems to indicate parity2 and disk5 are new???

 

Maybe I am misunderstanding something about this scenario. Maybe johnnie will have more to say.

Posted

OK, if the disk failed mid rebuild you can use the invalid slot command:

 

-Tools -> New Config -> Retain current configuration: All -> Apply

-Assign any missing disk(s)

-Important - leave the browser on that page

-Open a SSH session and type:

mdcmd set invalidslot 5 29

-Do not  check the "parity is already valid" and start the array, disk5 will rebuild and parity2 re-sync

Posted

So parity 2 and disk5 are both from my original array and are not new. Parity 2 drive listed in the 2nd screenshot used to be my working parity drive from screenshot 1. and disk 5 was the failed drive in screenshot 1. I'm not sure what happened for these two to now show as new. The drive that is parity2 in the 2nd screenshot is in fact the parity drive that used to be working, and has correct parity data I want to build off.

Posted
6 minutes ago, johnnie.black said:

OK, if the disk failed mid rebuild you can use the invalid slot command:

 

-Tools -> New Config -> Retain current configuration: All -> Apply

-Assign any missing disk(s)

-Important - leave the browser on that page

-Open a SSH session and type:


mdcmd set invalidslot 5 29

-Do not  check the "parity is already valid" and start the array, disk5 will rebuild and parity2 re-sync

 

Will this allow disk5 to rebuild off the now parity2 drive?

 

Also, I really appreciate the help here guys! :)

Posted
Just now, JimBob said:

 

Will this allow disk5 to rebuild off the now parity2 drive?

 

Also, I really appreciate the help here guys! :)

No, the command johnnie gave will rebuild disk5 and parity2 using parity1.

Posted

Wait, you are saying parity2 is actually a valid parity1 disk???

 

That is even more complicated since parity2 calculation is different and a parity1 disk isn't a valid parity2 disk.

Posted
1 minute ago, trurl said:

So are you saying parity1 is actually invalid for rebuilding disk5, but parity2 is valid for rebuilding disk5?

 

Afraid so! Screenshot1 shows the before broken HBA state of my array, with parity2 operational, but parity1 down. So by my logic I'd need to rebuild disk5 off parity2, but parity2 is showing as unassigned and new to unraid

Posted

It sounds like he is going to have to put parity2 back into the parity 1 slot. And to avoid further confusion, leave parity2 out of it completely, then see if disk5 can be rebuilt.

 

I am beginning to doubt we have enough of the full picture here to hope for the best.

Posted

OK, I get it now after looking at screenshot 1 again. Parity2 has always been parity2. So OK let's go back to this post from johnnie. Sorry for my confusion.

 

7 minutes ago, johnnie.black said:

If parity2 is the valid one you'd use intead:

 


mdcmd set invalidslot 0 5

 

Posted

It is a pretty confusing situation, so I hope I can explain it right. The only parity drive I know had valid parity data on it is the one with the serial number ST10000VN0004-1ZD101_ZA2191DB. This is Parity2 as seen in the first picture. This now is showing as unassigned. What I would like is to get the drive ST10000VN0004-1ZD101_ZA2191DB back into the array and rebuild disk5 off of it.

Posted

So it would become:

 

25 minutes ago, johnnie.black said:

-Tools -> New Config -> Retain current configuration: All -> Apply

-Assign any missing disk(s)

-Important - leave the browser on that page

-Open a SSH session and type:


mdcmd set invalidslot 0 5

 

 

Posted

Right'o, I'll try what jonnie said with that new command. Just to clarify I'll:

 

-Tools -> New Config -> Retain current configuration: All -> Apply

-Assign any missing disk(s)

-Important - leave the browser on that page

-Open a SSH session and type:

mdcmd set invalidslot 0 5

 

This should then start my array with all attached drives, and claim parity2 (ST10000VN0004-1ZD101_ZA2191DB ) as the valid parity?

Posted
1 minute ago, JimBob said:

Right'o, I'll try what jonnie said with that new command. Just to clarify I'll:

 

-Tools -> New Config -> Retain current configuration: All -> Apply

-Assign any missing disk(s)

-Important - leave the browser on that page

-Open a SSH session and type:


mdcmd set invalidslot 0 5

 

This should then start my array with all attached drives, and claim parity2 (ST10000VN0004-1ZD101_ZA2191DB ) as the valid parity?

Yes, basically the command is saying parity and disk5 are the invalid disks and all others are OK.

Posted

Great, I'll run through the processes now. What is the worst case scenario with this? IF this somehow goes wrong, or parity2 some how is having issues, could I potentially lose my whole array, or only disk5 worst comes to worse?

Posted
1 minute ago, JimBob said:

Great, I'll run through the processes now. What is the worst case scenario with this? IF this somehow goes wrong, or parity2 some how is having issues, could I potentially lose my whole array, or only disk5 worst comes to worse?

 

Only parity and disk5 will be written during the rebuild. All other disks including parity2 will only be read so they will be just as before. And since all data disks are independent filesystems in unRAID, each of them will be intact with their own files and can be read without any of the other disks.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...