[SOLVED] Replacing Failing Disk


Recommended Posts

I copied all the data off of a failing disk.  How can I remove the disk from my array or replace it with a larger disk without having to recalculate parity?  Anyway or should I just fail out the disk and then replace it and let the rebuild take care of it?

Edited by dasoul
Link to comment
On 5/29/2017 at 3:36 AM, johnnie.black said:

If you want to replace with with a larger disk just rebuild it, you could do a new config but you'll need to rebuild parity.

 

Yeah I just ended up doing a swap.  Still I am going to need to know how to just remove a disk or two once I remove some of these older disks from the array.  Is there a way to get them removed without having to recalculate parity?

Link to comment
19 minutes ago, dasoul said:

 Is there a way to get them removed without having to recalculate parity?

Yes, but if your goal is to save time, then don't bother. It takes longer and is much riskier to keep parity valid by fully zeroing the drive to be removed than it would be to simply recalculate parity.

Link to comment
11 hours ago, jonathanm said:

Yes, but if your goal is to save time, then don't bother. It takes longer and is much riskier to keep parity valid by fully zeroing the drive to be removed than it would be to simply recalculate parity.

 

Well I have to move the data from the drive anyways and place it onto one of the larger drives I "drive swapped" into the array.  So its not really about time.  Although it saves the time of having to recalculate parity if there is a way once I have moved all the data off the old drive I will be removing from the array completely.

Link to comment

To elaborate on what jonathanm already said, there is a method to remove a drive without rebuilding parity. That method involves writing zeros to the entire drive to be removed, while the drive is still part of the parity array. Writing those zeros with the drive still in the array updates parity so it agrees with all those written zeros. After the entire drive has been written with zeros, then it can be removed from the parity array and a new config set without the drive, and without needing to recalculate parity, since it was already updated during the writing of the zeros. Removing a drive that is all zeros doesn't invalidate parity.

 

So, it is kind of complicated, and not really a time-saver. Also note that a drive that has all of the files deleted from its filesystem is not a clear (all zero) drive.

 

And in general, any changes to your configuration will require significant time, since parity must be maintained. This usually means writing an entire drive in some way, and writing TBs takes a while.

Link to comment
10 hours ago, trurl said:

To elaborate on what jonathanm already said, there is a method to remove a drive without rebuilding parity. That method involves writing zeros to the entire drive to be removed, while the drive is still part of the parity array. Writing those zeros with the drive still in the array updates parity so it agrees with all those written zeros. After the entire drive has been written with zeros, then it can be removed from the parity array and a new config set without the drive, and without needing to recalculate parity, since it was already updated during the writing of the zeros. Removing a drive that is all zeros doesn't invalidate parity.

 

So, it is kind of complicated, and not really a time-saver. Also note that a drive that has all of the files deleted from its filesystem is not a clear (all zero) drive.

 

And in general, any changes to your configuration will require significant time, since parity must be maintained. This usually means writing an entire drive in some way, and writing TBs takes a while.

 

Thanks for the expanded information.  Right now I have 13 data drives in my unraid.  I have 3 more 8TB drives to add to replace 3 of the older 3 or 2TB drives I have in the system.  So it seems like the best way to do it is to just replace 3 drives 1 at a time waiting for the rebuild/expansion.  Once they are added move the files from the other smaller/older drives I want to remove from the configuration.  Do the 'new config' utility and then reassign the data drives which I want to leave in the array.  Making sure the not assign a data drive to the parity drive then let the parity rebuild once I start the array back up.

 

Does that sound right?

 

The 'new config' utility doesnt wipe out my plugins does it?

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.