September 4, 2025Sep 4 I have a ZFS array that was created manually before Unraid supported ZFS. 5 drives, RAIDZ1.During a scrub errors were detected, which led to the defective drive to be deactivated.I then tried to use my unraid parity drive (the data isn't as crucial and losing one of the drives isn't that big of a deal, bad, but not catastrophic) to replace the defective drive in the array while waiting for the new drive to arrive (I need to preclear it, check for errors, ... that's going to take quite a while). In the process of getting the drive ready to be used in the ZFS I had stopped and then started all arrays (is there no option of starting / stopping individual arrays? That would be useful...). As a result, Unraid started resilvering the defective drive.According to the FAQ the order of the drives should match the result of zpool status... it didn't. But I couldn't find a proper guide, only the information that I should stop the array, remove the drives, export the array, start it, stop it and then reattach the drives in the right order. That did not work, because once the drives are removed, the array wouldn't start. Also, export doesn't find an array to export. Changing the order of drives doesn't work either, as it rightfully detects the order to be wrong. Is this even necessary?Now to the actual problem: I stopped the array, selected the new drive (after removing the partition and quick formatting it) instead of the defective one and started the array again. Now it is saying resilvering, however the starting time seems to be the starting time from the first attempt (where ZFS wanted to resilver the defective drive). It doesn't seem to be accessing the "new" drive at all. That drive has gone to sleep. # zpool status pool: zfs state: DEGRADED status: One or more devices is currently being resilvered. The pool will continue to function, possibly in a degraded state. action: Wait for the resilver to complete. scan: resilver in progress since Thu Sep 4 06:54:20 2025 12.3T / 81.0T scanned at 1.50G/s, 245G / 69.2T issued at 29.9M/s 0B resilvered, 0.35% done, no estimated completion time config: NAME STATE READ WRITE CKSUM zfs DEGRADED 0 0 0 raidz1-0 DEGRADED 0 0 0 sdn ONLINE 0 0 0 sdt ONLINE 0 0 0 sdp ONLINE 0 0 0 11954385431251436667 UNAVAIL 0 0 0 was /dev/sdj1 sdu ONLINE 0 0 0 errors: No known data errorsThe remaining drives are moving at a leisurely pace, which has me worried. This doesn't seem right, and what use is resilvering if it doesn't write anything to the new drive?Is this expected / wanted behavior, did something go wrong? If so, what can I do? At this pace, with this amount of data, I'm expecting more drives to die before everything is done. A lot can happen in several months.
September 5, 2025Sep 5 Author Thanks, here's the diagnostics.I also received the following: pool: zfs state: DEGRADED status: One or more devices could not be used because the label is missing or invalid. Sufficient replicas exist for the pool to continue functioning in a degraded state. action: Replace the device using 'zpool replace'. see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-4J scan: resilvered 0B in 11:09:36 with 0 errors on Thu Sep 4 18:03:56 2025 config: NAME STATE READ WRITE CKSUM zfs DEGRADED 0 0 0 raidz1-0 DEGRADED 0 0 0 /dev/sdn1 ONLINE 0 0 0 /dev/sdt1 ONLINE 0 0 0 /dev/sdp1 ONLINE 0 0 0 11954385431251436667 UNAVAIL 0 0 0 was /dev/sdj1 /dev/sdu1 ONLINE 0 0 0 errors: No known data errorsI wonder if I should just do the zpool replace, or if I should fix the order of the drives first, ... kadanas-diagnostics-20250905-1119.zip
September 5, 2025Sep 5 Community Expert 42 minutes ago, kadajawi said:or if I should fix the order of the drives first, ...You need to fix that first to use the GUI to do a replacement; current Unraid releases will auto-sort the devices. Do this:on main click on the first device for that pool and then "remove pool"back on main, create a new pool with the same name and 4 slots (to import the pool degraded)assign only the 4 current pool devices (sdn, sdt, sdp, sdu), any order, leave the filesystem set to autostart the array to import the pool and post new diags
September 5, 2025Sep 5 Author Thanks, did that. Here's the new diags. kadanas-diagnostics-20250905-1226.zip
September 5, 2025Sep 5 Community Expert Solution Order is now correct; so you should be able to now replace the missing device, just stop the array, assign the device, start the array.
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.