Can I do this? (replace disk in a stripe pool)

I use Truenas Core 13.0-U6.2. I have a Stripe pool of size 6 Tbs named Tank_1 which works normally. I took a new 10 Tbs hard drive and installed it into the system. Then I go to Storage–>Press the gear icon at Stripe pool 6 Tbs(Tank_1) → Status. Then select 3 dots of 6Tbs HDD and select Extend, then select the 10 Tbs HDD. After completing the Extend process, I offline and remove the 6Tbs hard drive. Turned off the system and removed the 6 Tbs hard drive from the system, then turned on the system. Will I get a Stripe pool named Tank_1 size 10 Tbs with all the data of the old 6 Tbs Stripe pool? It’s risky to use Stripe pool, but I have to use the 6 Tbs HDD elsewhere.
Thanks you,

No, there is no redundancy in a stripe set. Your data is distributed across all the disks, not duplicated. If you remove any disk from a stripe set you will lose all data in that vdev and pool.

If you extend a stripe set you increase the amount of usable space, but also increase the likelihood of data loss, as you’ve now got more disks that could potentially fail.

Stripe sets are a Bad Idea for storing data that you want to keep.

I think OP is temporarily upgrading to a mirror, and then wants to remove the original disk.

This will work. You must detach the original disk though.

BUT you could just select the original disk and choose “replace” to replace it with the 10TB.

2 Likes

It had occurred to me that they were confusing stripe and mirror, but didn’t want to make that assumption at the expense of their data :slight_smile:

1 Like

Thank you very much, I’ve only been using Truenas for a week and I still have a lot to learn. In my system there is only one pool named Tank_1 and in pool Tank_1 there is only one 6 Tbs hdd. Can I use “Replace” to replace the disk in the pool and remove the old HDD?

Just zpool attach the new one and once the resilvering process is done, zpool detach the old one.

Make sure to copy the partition table and use UUIDs, not plain device names. Or use the UI to “extend” the vdev, turning it into a mirror, then as above detach the old drive. The UI will do the partitioning magic for you.

1 Like

Thank you very much, from searching I found that most of them say that it is not possible to “Replace” disk in Stripe pool. So I thought that changing the stripe pool to mirror and removing the original disk would be my solution (in my system There is only one pool and one hard drive). Everyone’s advice is very helpful to me.

“Replace” does this

3 Likes

Pretty sure it works fine, as long as the disk is not failing.

1 Like

Do you have a backup of your data before you go running these commands ?

My system is currently in the process of replacing(resilver). And I forgot to back up my data first. (ada0 is original disk, ada1 is new disk)

Oh! Awesome. After the Replace was completed, truenas removed the old HDD from the pool and replaced it with the new HDD without me having to do anything. I just shutdown the system, removed the old HDD, and turned on the system. And everything returned to work as usual.
Thank you all very much for your advice.

2 Likes