我有一个 RAID-5 mdadm 阵列,读取该块时确实会导致Buffer I/O error on dev md0, logical block 1598030208, async page read
写入dmesg
。当然,读取实际上也会失败。此行为在重新启动后始终一致,并且始终是同一个块。
我想了解错误来自何处。据我了解,要么是某个物理驱动器导致问题,要么可能是阵列处于不一致状态。无论哪种情况,我都想知道是哪一种原因,以便我可以采取进一步措施尝试解决问题。
不幸的是,dmesg
根本没有给出进一步的提示。我查看了smart
所有相关驱动器的参数,但没有一个引起怀疑。我还能尝试什么来排除阵列故障?
提前致谢!
编辑:根据要求,输出mdadm --detail /dev/md0
:
/dev/md0:
Version : 1.0
Creation Time : Sat Dec 28 03:50:47 2013
Raid Level : raid5
Array Size : 15621798144 (14898.11 GiB 15996.72 GB)
Used Dev Size : 3905449536 (3724.53 GiB 3999.18 GB)
Raid Devices : 5
Total Devices : 5
Persistence : Superblock is persistent
Update Time : Fri Dec 22 11:36:24 2017
State : clean
Active Devices : 5
Working Devices : 5
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 64K
Name : 0
UUID : 01a3d3c1:6a5ac63d:0cc10dd0:f8e7a1c4
Events : 2132931
Number Major Minor RaidDevice State
5 8 51 0 active sync /dev/sdd3
1 8 83 1 active sync /dev/sdf3
4 8 35 2 active sync /dev/sdc3
7 8 67 3 active sync /dev/sde3
6 8 3 4 active sync /dev/sda3
repair
更新:我尝试通过写入来清理数组md/sync_action
。该过程完成,没有任何输出dmesg
或 出现故障迹象/proc/mdstat
。但是,在与上述相同的块中,从数组读取仍然失败1598030208
。
更新2,供参考:我在linux-raid邮件列表中问了这个问题:https://marc.info/?l=linux-raid&m=151486117529497&w=2