RAID 6与XFS处理坏扇区

RAID 6与XFS处理坏扇区

我在 raid 6 中有 7 个 2tb 硬盘连接到 Adaptec 71685

dmesg 消息说我有坏扇区

2321236720 2321236728 2321236760 2321236792 2321236824 2321236856 2321236864 2329211680 2329212192 2329212704 2329212872 2 329213384 2329225888 2329226400 2329226408 2329226920 2329227432 2701810832 2701811344 2701811856 2701812368

xfs_repair -L /dev/sdc1

修复文件系统,但是当我将更多数据写入 RAID 时,错误再次出现。

[  703.888787] sd 4:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 8a 5b 42 f8 00 00 00 80 00 00
[  704.542375] sd 4:0:0:0: [sdc] tag#2 CDB: Read(16) 88 00 00 00 00 00 8a 5b 42 f8 00 00 00 10 00 00
[  704.543095] sd 4:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 8a 5b 43 08 00 00 00 10 00 00
[  704.543791] sd 4:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 8a 5b 43 18 00 00 00 10 00 00
[  704.544477] sd 4:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 8a 5b 43 28 00 00 00 10 00 00
[  704.668617] sd 4:0:0:0: [sdc] tag#1 CDB: Read(16) 88 00 00 00 00 00 8a 5b 43 38 00 00 00 10 00 00
[  704.669118] sd 4:0:0:0: [sdc] tag#1 CDB: Read(16) 88 00 00 00 00 00 8a 5b 43 48 00 00 00 10 00 00
[  704.669558] sd 4:0:0:0: [sdc] tag#1 CDB: Read(16) 88 00 00 00 00 00 8a 5b 43 58 00 00 00 10 00 00
[  704.672910] sd 4:0:0:0: [sdc] tag#1 CDB: Read(16) 88 00 00 00 00 00 8a 5b 43 68 00 00 00 10 00 00
[  711.364409] sd 4:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 8a 5b 42 f8 00 00 00 08 00 00
[  711.365047] sd 4:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 8a 5b 43 00 00 00 00 08 00 00
[  711.365633] sd 4:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 8a 5b 43 08 00 00 00 08 00 00
[  711.366210] sd 4:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 8a 5b 43 10 00 00 00 08 00 00
[  711.366704] sd 4:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 8a 5b 43 18 00 00 00 08 00 00

尝试对 Adaptec 71685 进行修复验证,结果显示一切正常。

我有几 TB 的数据,我不想从云备份中重新下载,因为它会很慢。

我不在乎坏扇区是否只是隐藏的,chkdsk 风格。如果我知道这些扇区位于哪个硬盘上,我可以使用 adaptec 内置工具,但扫描所有 7 个驱动器的速度会很慢。

Adaptec 控制器上的 SMART 仅显示少量(多达 24 个)CRC 错误,7 个驱动器上的所有其他错误指标均为 0。几个驱动器已中止命令,但最高数量为 581,并且没有增加。

我决定运行 badblocks -b 65536 -s -v -o /badblocks.txt /dev/sdc1

默认块大小 1024 表示块数量超过了 32 位整数可以处理的数量,因此我使用了 65536。

14.14% 的人声称有 140 个错误。我如何告诉 xfs 这个列表?我可以以某种方式强制 Adaptec 71685 处理这些错误吗?

相关内容