为什么我的 zpool 替换从未完成,我现在该怎么办?

Jos*_*osh 8 zfs raid1

我有一个 ZFS zpool,在镜像配置中有两个磁盘,da0并且da1. da1失败了,所以我用da2using替换了它

zpool replace BearCow da1 da2
Run Code Online (Sandbox Code Playgroud)

这运行了几个小时,在此期间zpool status表明阵列正在重新同步。完成后,zpool status显示resilver完成,但阵列仍然降级......

我尝试了 azpool scrub和 a zpool clear,但数组仍然显示为降级:

[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
config:

        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
Run Code Online (Sandbox Code Playgroud)

我不能zpool replace BearCow da1 da2再因为da2已经是 BearCow 的成员了...

这是运行 ZFS 池版本 15 的 FreeBSD (FreeNAS)。

如何让我的阵列再次显示为健康?

Chr*_*s S 10

尝试:

zpool detach BearCow da1
Run Code Online (Sandbox Code Playgroud)

查看它是否会发出任何错误消息或解决问题。

当重新同步完成时,这应该会自动发生,但看起来你的由于某种原因挂了。如果这不起作用,还可以采取其他措施。它应该可以工作,但首先它也不应该是必要的。