我没有发现修复工作的细节,以及文档的要求。
从擦洗自动修复我需要镜像? RAIDZ? 要么? (校验和本身是否包含校验)?
ZFS块没有奇偶校验,所以它们不是“自我修复”的。
清理尝试通过在别处重新定位带有错误校验和的块来修复损坏错误。 只有在池中存在错误块的正确副本时才能执行此操作。
如果使用冗余(镜像或raidz),后者的可能性是相当高的,但如果校验和错误影响,对于单个设备池或条带仍然存在:
copies=2或更多) 清理不会修复损坏错误,只会检测到它们。 如果有可用数据的有效冗余副本(镜像,raidz等),则损坏的数据将被丢弃。
擦洗完成后,如果find并丢弃了错误的数据,则会触发重新同步操作。 这将冗余恢复到一个数组(镜像,raidz等)。 由于scrub会触发这种行为,因此可以将其称为同一操作的一部分,但在内部它绝对是一个单独的过程。
如果存在,清理应该提示底层存储器报告SMART和URE错误。 URE会提示标记磁盘失败(如果有可用的备用磁盘,将自动更换磁盘)。 必须单独监视SMART错误(通常是通过smartd或类似的方式)。