ZFS – zpoolreplace永远不会结束

我有一个Ubuntu 14.04.1服务器上的5×3TB raidz1arrays。 上个月,其中一个驱动器死亡(听得见的点击)。 我能够用zpool replace RAID <dead drive> <new drive> 。 这完成没有问题,池再次在线和健康。 然后另一个驱动器死亡 我尝试了同样的事情,但游泳池陷入以下状态

 # zpool status pool: RAID state: DEGRADED status: One or more devices has experienced an error resulting in data corruption. Applications may be affected. action: Restore the file in question if possible. Otherwise restore the entire pool from backup. see: http://zfsonlinux.org/msg/ZFS-8000-8A scan: resilvered 29.1G in 6h3m with 1028 errors on Mon Jan 5 05:35:35 2015 config: NAME STATE READ WRITE CKSUM RAID DEGRADED 0 0 1.00K raidz1-0 DEGRADED 0 0 2.01K ata-ST3000DM001-9YN166_Z1F15FAV ONLINE 0 0 0 ata-ST3000DM001-9YN166_Z1F15FCJ ONLINE 0 0 0 replacing-2 DEGRADED 0 0 4 17164957131155215254 UNAVAIL 0 0 0 was /dev/disk/by-id/ata-ST3000DM001-9YN166_Z1F15TBH-part1 ata-ST3000DM001-1ER166_W500JFME ONLINE 0 0 0 ata-ST3000DM001-1ER166_Z500765Z ONLINE 0 0 3 ata-ST3000DM001-1CH166_W1F1M2C6 ONLINE 0 0 0 errors: 1028 data errors, use '-v' for a list 

好消息是数据是非必要的。 我不担心的错误(文件是video,仍然可以罚款)。 正如其他问题和论坛所build议的,我已经尝试了下面的行动来弥补这一点。

 # zpool offline RAID ata-ST3000DM001-9YN166_Z1F15TBH cannot offline ata-ST3000DM001-9YN166_Z1F15TBH: no valid replicas # zpool offline RAID 17164957131155215254 cannot offline 17164957131155215254: no valid replicas # zpool detach RAID ata-ST3000DM001-9YN166_Z1F15TBH cannot detach ata-ST3000DM001-9YN166_Z1F15TBH: no valid replicas # zpool detach RAID 17164957131155215254 cannot detach 17164957131155215254: no valid replicas 

我还运行了一个zpool clear RAIDzpool scrub ,它们触发了popup式设备,但是仍保持与上述状态相同的状态。 然后我试图删除新的磁盘,但奇怪的是没有有效的副本错误。

 # zpool offline RAID ata-ST3000DM001-1ER166_W500JFME cannot offline ata-ST3000DM001-1ER166_W500JFME: no valid replicas 

我对如何进行感到不知​​所措。 看起来replace成功了,但zfs不会放弃原来的磁盘。

 # dkms status -v spl, 0.6.3, 3.13.0-43-generic, x86_64: installed zfs, 0.6.3, 3.13.0-43-generic, x86_64: installed 

更新:我删除了/etc/zfs/zpool.cache的zpoolcaching并重新启动。 再次复位,将回报。

更新2:仍处于与上述相同的状态。 如果没有办法完成replace,有没有办法重build池而不丢失任何数据?

更新3:这是最近的状态:

 # zpool status pool: RAID state: DEGRADED status: One or more devices has experienced an error resulting in data corruption. Applications may be affected. action: Restore the file in question if possible. Otherwise restore the entire pool from backup. see: http://zfsonlinux.org/msg/ZFS-8000-8A scan: resilvered 29.1G in 6h1m with 1028 errors on Wed Jan 7 03:49:13 2015 config: NAME STATE READ WRITE CKSUM RAID DEGRADED 0 0 1.00K raidz1-0 DEGRADED 0 0 2.01K ata-ST3000DM001-9YN166_Z1F15FAV ONLINE 0 0 0 ata-ST3000DM001-9YN166_Z1F15FCJ ONLINE 0 0 1 replacing-2 DEGRADED 0 0 0 17164957131155215254 UNAVAIL 0 0 0 was /dev/disk/by-id/ata-ST3000DM001-9YN166_Z1F15TBH-part1 ata-ST3000DM001-1ER166_W500JFME ONLINE 0 0 0 ata-ST3000DM001-1ER166_Z500765Z ONLINE 0 0 0 ata-ST3000DM001-1CH166_W1F1M2C6 ONLINE 0 0 0 errors: 1028 data errors, use '-v' for a list 

所有5个驱动器的smartctl数据在这里 。

我有完全一样的地位:

  NAME STATE READ WRITE CKSUM RAIDZ0_01 DEGRADED 0 0 0 raidz1-0 DEGRADED 0 0 0 gptid/4fb5f83e-91b1-11e2-923c-000c292ee274 ONLINE 0 0 0 gptid/50402028-91b1-11e2-923c-000c292ee274 ONLINE 0 0 0 replacing-2 DEGRADED 0 0 0 2345526077585836973 UNAVAIL 0 0 0 was /dev/gptid/72973ce8-f3bf-11e2-9759-000c292ee274 gptid/19062bb3-c67f-11e4-8683-000c292ee274 ONLINE 0 0 0 gptid/d69abb6b-3cd2-11e4-873f-000c292ee274 ONLINE 0 0 0 gptid/51e62469-91b1-11e2-923c-000c292ee274 ONLINE 0 0 0 gptid/528221a4-91b1-11e2-923c-000c292ee274 ONLINE 0 0 0 gptid/53288697-91b1-11e2-923c-000c292ee274 ONLINE 0 0 36 gptid/c8d9e708-cc4a-11e3-99b3-000c292ee274 ONLINE 0 0 0 logs gptid/ade4947f-e365-11e3-8230-000c292ee274 ONLINE 0 0 0 cache gptid/f0017430-e364-11e3-8230-000c292ee274 ONLINE 0 0 0 errors: 802342 data errors, use '-v' for a list 

除了你尝试的东西,我也更新了Freenas,但都没有结果。 然而在我的情况下,我被迫搬走旧的驱动器,并用新的驱动器进行物理replace。 我决定通过networkinggraphics用户界面大胆地“分离”驱动器。 这立即改变了从“退化”到“在线”池的状态。

请尝试

zpool离线zpool分离

例如第一个postzpool offline RAID 17164957131155215254 zpool detach RAID 17164957131155215254