您可以使用 启动 mdadm 阵列的清理echo 'check' > /sys/block/mdX/md/sync_action
,如果发现坏扇区,它将自动重写它(从镜像或 RAID5/6 的奇偶校验信息)。
然而,如果所有块读取成功但发现不一致,则这被视为不匹配。在这种情况下,修复很复杂,因为 mdadm 无法判断哪个镜像包含正确的数据 (RAID1/10) 或数据或奇偶校验是否已损坏 (RAID5)。
从理论上讲,如果我正确理解 RAID6,则 RAID6 的情况并非如此。因为存在双奇偶校验,所以应该可以查明单个损坏的位置,无论是数据还是奇偶校验。
理论上是可能的:数据+奇偶校验给你关于数据应该是什么的三种意见;如果其中两个一致,则可以假设第三个是错误的,并根据前两个重写。
Linux RAID6 不这样做。相反,只要出现不匹配,两个奇偶校验值就被假定为不正确,并根据数据值重新计算。曾有人提议改为“多数票”制度,但尚未实施。
该mdadm
软件包包含raid6check 实用程序,该实用程序尝试在奇偶校验不匹配的情况下找出哪个磁盘已损坏,但它有一些粗糙的边缘,默认情况下不安装,并且不修复它发现的错误。
归档时间: |
|
查看次数: |
2169 次 |
最近记录: |