I have a ZFS zpool with two disks in a mirror configuration, da0 and da1. da1 failed, and so I replaced it with da2 using

zpool replace BearCow da1 da2

This ran for a few hours, during which zpool status showed that the array was being resilvered. When that finished, zpool status showed that the resilver was completed, but the array was still degraded...

I tried a zpool scrub and a zpool clear, but the array still shows as degraded:

[root@chef] ~# zpool status BearCow
  pool: BearCow
 state: DEGRADED
 scrub: scrub completed after 0h20m with 0 errors on Tue Oct  9 16:13:27 2012

        NAME           STATE     READ WRITE CKSUM
        BearCow        DEGRADED     0     0     0
          mirror       DEGRADED     0     0     0
            da0        ONLINE       0     0     0
            replacing  DEGRADED     0     0     0
              da1      OFFLINE      0     0     0
              da2      ONLINE       0     0     0

errors: No known data errors

I can't zpool replace BearCow da1 da2 anymore because da2 is already a member of BearCow...

This is FreeBSD (FreeNAS) running ZFS pool version 15.

How do I get my array to show as healthy again?


1 Answer 1



zpool detach BearCow da1

See if it spits out any error messages or resolves the issue.

This should automatically happen when the resilvering is done, but it looks like yours hung for some reason. There's additional measures that can be taken if this doesn't work. It should work, but it also shouldn't be necessary in the first place.

  • I had the same problem as the original question on my FreeNAS-8.0-RELEASE-amd64 machine. This solved it. Mar 8, 2013 at 7:51
  • This happens to me every time with FreeNAS 8. I expect it's a bug in FreeBSD or FreeNAS.
    – Josh
    Mar 15, 2013 at 11:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .