Removing Multiple Drives from an array


Recommended Posts

Hey all,

 

When I originally built my array I used 5 sata (1 of which is my parity drive) and 4 pata drives. The 4 pata drives were put in just because I had them. These are old and slow drives. Two of which don't even support SMART.

 

I would like to remove these drives from my array while still keeping my data intact (of course :P). The wiki explains this but I'm still a little concerned and wondering if anyone has done this, or if I should play it safe, and do one disk at a time?

 

Will the restore function cause any data loss? Can I remove a single drive, hit restore, and still retain the data on the sata drives? Does restore just recreate a super.dat with the current drives and rebuild parity?

 

Currently the pata drives have no data on them.

 

Any guidance or experiences are appreciated.

 

Thanks!

Link to comment

To remove the drives...

 

Stop the array,

 

Go to the "Devices" page and un-assign the drives.

 

 

Go back to the "Main" page, If any disk shows "unformatted" it indicates it could not be un-mounted/mounted.  This could be because a process was open using a file on the disk when you attempted to stop the array, or you had used the "cd" command to make one of its disks your current directory using telnet.

A re-boot will take care of those open files.  DO NOT check the box stating to re-format the drives, unless you have no data on them.  Just use the reboot button.

 

If none of the drives show an unexpected "unformatted" indication, check the checkbox next to the "Restore" button and press it.

 

The "Restore" button, as you already described, does not "restore" anything.  It does exactly as you described.  It basically deletes the existing "Super.dat" file that holds the "superblock" describing your unRAID "md" array.  (actually, "pressing restore" renames the super.dat file to be super.old, effectively deleting it, since when unRAID attempts to open super.dat, it will not be there) 

When the array is "Started" after pressing "Restore," if it is unable to open the existing superblock, unRAID then creates a new Super.dat file based on the drives currently assigned on the "Devices" page.  Since the new "Super.dat" file does not have any indication of parity being valid, and unRAID will immediately start to build a valid parity drive from the contents of the currently assigned and working data drives.  Once parity calculation is complete, an indicator will be set in the super.dat file showing it is valid.  It, in combination with a second indicator showing a clean array "Stop" occurred will determine if parity is re-calculated the next time you reboot.  If the array had valid parity, and was stopped cleanly, it will not start a re-calculate parity after a reboot.  Otherwise, it will check parity, since it cannot be sure all is correct.

 

The "Restore" button is only needed when removing a drive from the array and not replacing it with another, exactly as you are describing.

You will not lose data unless you ask unRAID to re-format a drive that has data on it. (or a drive crashes before you get parity rebuilt... can't help you there)

 

Joe L.

Link to comment

Thanks Joe, great info, worked like a charm! Party sync set to take roughly 2 hours :)

 

Used to read 50,000 minutes with the pata drives, obviously at least one had issues, not to mention I was using a very cheap no name ide controller.

 

You get a gold star  ;D

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.