Jump to content

Upgrade Parity Disk and then replace old data disk with old parity disk.


bmfrosty

Recommended Posts

I have an array with:

1 SSD as cache pool

1 10TB disk as parity

2 10TB disks as data

1 3TB disk as data.

 

I am out of drive bays.

 

I've removed the parity disk and replaced it with a precleared 14TB disk.

I'd like to preclear the old 10TB parity disk and use it to replace the old 3TB disk.

 

I think my steps are:

 

1) Plug the old parity disk to a USB enclosure

2) Clear the first few sectors - `dd if=/dev/zero of=/dev/hdx bs=1024 count=10` - to clear the preclear signature

3) Run the preclear script on it.

4) Shut down the array and power down

4a) Swap the 3TB disk for the 10TB disk

5) Power Up and allow the parity to rebuild the 10tb disk

 

Is this the best method?   Am I missing a step somewhere?  Am I completely off base?

Link to comment

Not sure why you want to preclear the 10TB, are you suspicious that it may be failing? You should never use a drive you consider marginal in the parity array.

 

If you are confident all drives are healthy, I'd do a non-correcting parity check, if it comes back with zero errors, you can then just pull the 3TB and replace it with the 10. No need for any other manipulations.

Link to comment

If I'm mistaken, then I'm mistaken.  My understanding (definitely old) was that a preclear would reduce the amount of time spent during the rebuild of the data from the 3TB drive to (and I'm forgetting here) clear out all the data past the 3TB mark or (and now that I'm writing it out it seems unlikely) prevent the old parity data on the old parity drive being used to update the parity information on the new parity drive since it is readable data in TB 4-10.

 

Am I correct in needing to clear the first few sectors of the old parity disk so it's not recognized by Unraid as part of the array?

Link to comment
7 minutes ago, bmfrosty said:

Am I correct in needing to clear the first few sectors of the old parity disk so it's not recognized by Unraid as part of the array?

Nope. The array assignments are kept on the flash drive. Nothing written on the drive identifies it, just the serial number of the drive, and you already told Unraid that the parity slot is occupied by a different serial numbered drive.

Link to comment
1 hour ago, bmfrosty said:

My understanding (definitely old) was that a preclear would reduce the amount of time spent during the rebuild of the data from the 3TB

Any time spent doing a Preclear is wasted as the rebuild process always writes to every sector on the drive thus erasing whatever was already there.

Link to comment
2 hours ago, JonathanM said:

Nope. The array assignments are kept on the flash drive. Nothing written on the drive identifies it, just the serial number of the drive, and you already told Unraid that the parity slot is occupied by a different serial numbered drive.

Great.  Makes things easier for me.

 

1 hour ago, itimpi said:

Any time spent doing a Preclear is wasted as the rebuild process always writes to every sector on the drive thus erasing whatever was already there.

Very good to know.  I should be done during the weekend then. 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...