I have a single-parity raid array with 5 6TB drives running under FreeNAS-11.3-U5. One drive was reporting a SMART error, so this morning I decided to proactively replace it. However, I foolishly matched the model number of the drive instead of the serial number, and ended up removing and erasing the wrong drive.
Now, I have added the erased drive back into my NAS. I've also left the original, SMART-erroring drive in. But my pool's status is "unknown" and I can't recover.
My hope is that there is some way for me to tell FreeNAS that the drive that was failing still has useful parity data, then to use it to rebuild the non-failing drive I erased, then to (properly) replace the failing drive.
My problem is that I do not know how to do this. zpool status -v results in no information about the pool that is in the unknown state (nothing in this code block is likely relevant -- it lists two other pools on my NAS that are working properly, and does NOT list the pool that is in the "unknown" state):
When I run zpool import, it gives me info about the pool I want to fix:
4321565689443348002 is the drive that I offlined to replace, the drive that had a SMART error but that, I'm hoping, still has good data.
14458387268443437899 is the drive that I incorrectly removed and erased.
But when I try to run zpool online TIMOSTATION 4321565689443348002, it just tells me that there is 'no such pool'.
Is there any way to do the thing I am describing?
Thanks for any advice you can provide.
Now, I have added the erased drive back into my NAS. I've also left the original, SMART-erroring drive in. But my pool's status is "unknown" and I can't recover.
My hope is that there is some way for me to tell FreeNAS that the drive that was failing still has useful parity data, then to use it to rebuild the non-failing drive I erased, then to (properly) replace the failing drive.
My problem is that I do not know how to do this. zpool status -v results in no information about the pool that is in the unknown state (nothing in this code block is likely relevant -- it lists two other pools on my NAS that are working properly, and does NOT list the pool that is in the "unknown" state):
Code:
root@freenas[~]# zpool status -v pool: Mirror state: ONLINE scan: resilvered 13.2G in 0 days 00:01:56 with 0 errors on Thu Sep 9 09:21:38 2021 config: NAME STATE READ WRITE CKSUM Mirror ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 gptid/ca6343ff-0767-11eb-b65b-086266a243e6 ONLINE 0 0 0 gptid/ac89273a-1189-11ec-b465-086266a243e6 ONLINE 0 0 0 errors: No known data errors pool: freenas-boot state: ONLINE scan: scrub repaired 0 in 0 days 00:00:06 with 0 errors on Thu Sep 16 03:45:06 2021 config: NAME STATE READ WRITE CKSUM freenas-boot ONLINE 0 0 0 ada2p2 ONLINE 0 0 0
When I run zpool import, it gives me info about the pool I want to fix:
Code:
root@freenas[~]# zpool import pool: TIMOSTATION id: 16831627943878747789 state: UNAVAIL status: One or more devices are missing from the system. action: The pool cannot be imported. Attach the missing devices and try again. see: http://illumos.org/msg/ZFS-8000-3C config: TIMOSTATION UNAVAIL insufficient replicas raidz1-0 UNAVAIL insufficient replicas gptid/8c69fc78-fdef-11ea-8fdf-086266a243e6 ONLINE gptid/8cce67dd-fdef-11ea-8fdf-086266a243e6 ONLINE 14458387268443437899 UNAVAIL cannot open gptid/ded2ee6c-0b7d-11ec-9798-086266a243e6 ONLINE 4321565689443348002 OFFLINE
4321565689443348002 is the drive that I offlined to replace, the drive that had a SMART error but that, I'm hoping, still has good data.
14458387268443437899 is the drive that I incorrectly removed and erased.
But when I try to run zpool online TIMOSTATION 4321565689443348002, it just tells me that there is 'no such pool'.
Is there any way to do the thing I am describing?
Thanks for any advice you can provide.