Possible? Replace working drives with bigger drives and no rebuild


Recommended Posts

My primary server (see sig) needs more storage and with the case being full already my best option is to replace 2tb drives.  I purchased 4 more 4tb drives and have already run them all through 6+ cycles of preclear.  All drives in the server and the new drives are working fine.

 

It's been a while since I've been down in the unRAID trenches so I 'm not entirely sure if it's possible or how to accomplish this upgrade without a rebuild.  I'm fairly certain that any plan will be done one drive at a time.  I've also moved all data off the first drive I intend to replace and it's completely empty.

 

I think (but am not willing to bet on it) that I could now replace this empty 2tb drive with a freshly precleared 4tb drive drive and choose the option (I forget exactly what it is) to trust my parity.  Is this correct?

 

Any advice would be greatly appreciated.

 

Link to comment

I think (but am not willing to bet on it) that I could now replace this empty 2tb drive with a freshly precleared 4tb drive drive and choose the option (I forget exactly what it is) to trust my parity.  Is this correct?

Not really.  There's no guarantee that the directory maps (or any of the filesystem structures) are going to be stored at the exact same sectors on the drive.  (And a fresh precleared drive doesn't have any filesystem structure on it yet anyways)

 

If you did do this, the first thing you would have to do would be a correcting parity check to update parity with all of the changed info due to the new 4tb.  And since you would have to do that anyways, why not just do it correctly in the first place and rebuild the drive onto the 4tb.  Its the same time and is the only way to guarantee that you still have the ability to rebuild a failed drive.

Link to comment

I see what you mean.

 

I forget exactly how long the parity checks are but they are close to a full day and I know a rebuild will be the most stress the server generally gets (90% of the time all drive are spun down).  With 24 drives and a long rebuild process (done 4 times - one for each replaced drive) I'm concerned about a drive failing in the process.  I figured since I have the array space to clear a drive it would be better to do the upgrade without risking a failure during a rebuild.

Link to comment

I just recently did this to replace a 3TB with a 6TB drive.

 

You don't need to clear off the contents. Just stop the array, remove the 2TB from the array list, and start the array again. It will show the drive as missing. Stop the array, then put the 4TB drive into the missing slot and let UnRAID rebuild the drive with all of it's contents. This also gives you a backup of your data as it's still sitting on the 2TB drive you removed in the event of an issue.

Link to comment

I just recently did this to replace a 3TB with a 6TB drive.

 

You don't need to clear off the contents. Just stop the array, remove the 2TB from the array list, and start the array again. It will show the drive as missing. Stop the array, then put the 4TB drive into the missing slot and let UnRAID rebuild the drive with all of it's contents. This also gives you a backup of your data as it's still sitting on the 2TB drive you removed in the event of an issue.

Not really necessary to do the stop, unassign, start, then replace. Just shutdown, replace, select new drive in place of old one, and start. I have done this very many times upsizing drives in my small case. While there is more risk doing it with a lot of drives, I don't think there is any other way that actually reduces the risk significantly. Just check the SMART for all drives before you start. If you upgrade to V6 first it will make it a lot easier to check SMART, and will also notify you of relevant SMART changes.
Link to comment

I just recently did this to replace a 3TB with a 6TB drive.

 

You don't need to clear off the contents. Just stop the array, remove the 2TB from the array list, and start the array again. It will show the drive as missing. Stop the array, then put the 4TB drive into the missing slot and let UnRAID rebuild the drive with all of it's contents. This also gives you a backup of your data as it's still sitting on the 2TB drive you removed in the event of an issue.

Not really necessary to do the stop, unassign, start, then replace. Just shutdown, replace, select new drive in place of old one, and start. I have done this very many times upsizing drives in my small case. While there is more risk doing it with a lot of drives, I don't think there is any other way that actually reduces the risk significantly. Just check the SMART for all drives before you start. If you upgrade to V6 first it will make it a lot easier to check SMART, and will also notify you of relevant SMART changes.

 

Good to know. I thought it needed to see the drive as missing first, hence the extra steps.

Link to comment

Thank you guys but what you are describing is the normal method.  I am specifically looking to avoid the rebuild which I know is most definitely not normal.  I'm fairly sure it's possible, I think I've even done it before,  I just don't remember exactly how.

Link to comment

Good to know. I thought it needed to see the drive as missing first, hence the extra steps.

It does see it as missing when you boot up without it. If for some reason you leave the old drive in there with the new drive, you can just stop, assign the new drive in place of the old drive, and start.
Link to comment

Thank you guys but what you are describing is the normal method.  I am specifically looking to avoid the rebuild which I know is most definitely not normal.  I'm fairly sure it's possible, I think I've even done it before,  I just don't remember exactly how.

There are some threads I have read where you can remove a drive without rebuilding parity, by essentially clearing it while it is in the array with dd command.

 

So you could add a new clear drive and let unRAID format it, copy everything from the old drive to the newly added drive, then use dd to zero the old drive (the md# device, not the sdx device) so parity gets updated to a state where there is nothing on the old drive, then remove it and trust parity.

 

I will leave searching for those threads up to you.

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.