How to replace drives on unraid

After falling in love with unraid I wanted to improve my test install with new larger hard drives. I had 100GB of docker related files that I wanted to keep spread across 3 old data drives + 1 parity drive. In the below process I consolidate the 100GB into a single drive, install the new drives and enable drive encryption.

Important: This process temporarily removes parity drive protection, only follow these steps if you’re able to recover from data destruction

Here’s the steps to replace a drive in unraid:

  1. Shut down the docker service (Settings > Docker) and VM Manager (Settings > VM) and disable auto start (Settings > Disk)
  2. ssh into unraid (or use the web terminal)
  3. Manually consolidate any data you wish to keep onto the single disk1 (e.g. cp -rv /mnt/disk2/* /mnt/disk1/). This drive will remain in the server
  4. Shut down the server and remove the old drives (parity disk, disk2 and disk3)
  5. Install the 3 new drives (parity, disk2 and disk3) and turn on the server
  6. Go to Tools > New Config and clear the current disk configuration
  7. Go to Settings > Disk and set the default filesystem to xfs encrypted
  8. Go to Main tab and assign the old drive back into disk1 position
  9. Assign the new parity, disk2 and disk3 drives into desired positions
  10. Click on disk2 / disk3 and confirm their filesystem type is set to xfs encrypted
  11. Start the array and enter a new encryption key
  12. Tick the box to confirm formatting of the two new encrypted data drives, disk2 and disk3
  13. Wait for format to complete
  14. ssh back in and confirm old data is still available on /mnt/disk1/
  15. Now start a fresh parity build which will build up protection on the 3 drives
  16. Restart docker/vm services under Settings again

 

If you get any “orphan image” errors in docker you can resolve by following these instructions.

Alternatively you can try the unbalance plugin which provides a nice UI for some of the above process.

Leave a Reply

Your email address will not be published. Required fields are marked *