语境
我最近注意到我的 freeNAS 告诉我一个驱动器有问题。我有大约 16 个坏扇区,进行了智能测试等。我买了一个新驱动器,容量相同,去安装它,由于某种原因,其中一个驱动器的电源适配器部分松动,所以我的 RAID Z2 阵列中的 6 个驱动器中有 4 个是坏的,或者基本上没有冗余。
阵列开始重新同步,但从未完成,并且总是告诉我错误太多(14k+)。我弄清楚了电源适配器部分,因为实际上不太可能有两个驱动器发生故障,尤其是第二个驱动器在打开机箱后立即发生故障。我将其重新插入,但 ZFS 无法对其进行任何处理。
我最终用旧驱动器(相同的驱动器,但 ZFS 无法识别它,与 gpt / smartctl / zpool 匹配)替换了它自己,然后 ZFS 又回到了重新镀银状态。
当然,这仍然有相同的错误,现在我也无缘无故地得到了第三个驱动器重新同步,我做了一些 ZFS 清除和清理,它仍然每天都在重新同步,失败了,我清除了,重新同步了一些,但它毫无进展。
除了我对 ZFS 无法从这种相对低风险的情况中恢复感到非常失望之外(实际上只有一个驱动器出现故障并被迅速更换),NAS 及其主要和唯一共享仍然可用,而且我在第一个磁盘出现故障后已经做了备份。
问题
有什么方法可以让 ZFS 明白这个池没有问题,它应该重新同步两个新驱动器(其中一个是旧的驱动器,我擦除了它以帮助 ZFS 使用它)并且不再告诉我这些错误?
像 resilver -force -scrub_later -everything_is_obviously_fine -or_i_couldnt_possibly_use_the_share -just_mark_it_all_online -lets_get_back_to_actual_work_now 一样?
漫谈
我有点担心,因为现在它假装正在对 raidz2 池中的 6 个驱动器中的 3 个进行重新同步,而这些驱动器中显然有可用的数据,我严重怀疑是否有人可以做到这一点。
我希望它能很快将硬盘数量增加到 4 个,或者全部 6 个,从硬盘周围空气中积聚的残留磁性灰尘中重建所有数据。
任何建议都值得赞赏。谢谢!
答案1
我始终得不到答案,情况在好转之前先是变得更糟。总的来说,在至少十几次重新同步、清理、清除、删除包含错误的文件以及重新启动之后,它终于恢复了在线状态。
总而言之,我认为这主要意味着 ZFS 喜欢发出大警告,并且 zpool 状态并不完全清楚,因为在 raidz2 中重新同步 6 个驱动器中的 3 个驱动器在物理上是不可能的。
但大多数情况下,只要您的数据仍然可用并且从共享使用的角度来看一切正常,它最终可能会像这里一样正常,只需继续重新启动,清理,清除和处理具有校验和错误的文件。