重新激活失败的mdadm RAID5arrays的过程是什么?

我有一个由mdadmpipe理的三个磁盘RAID5arrays,上面有一个XFS文件系统。 当我使用机器的时候,我注意到机器突然变得没有反应(新的程序不会启动等等),但是对于我来说打开一个新的xterm并运行dmesg还是足够了。 内核日志显示了大量的SATA链接超时。 重启计算机时,BIOS没有报告两个驱动器(arrays中的一个驱动器以及一个DVD驱动器)。 问题原来是DVD驱动器(我一直有问题),并断开它再次看到硬盘驱动器。 用smartctl问题的磁盘( /dev/sdc )似乎没问题,所以我不认为这是磁盘故障。

问题是我无法弄清楚如何重新激活我的数组。 使用mdadm --examinemdadm --examine分区/dev/sda3/dev/sdb3 (那些没有失败的mdadm --examine显示他们当然认为/dev/sdc3是坏的/被删除的,而/dev/sdc3认为那很好。 更糟糕的是,arrays正在积极写入,所以事件计数是不同的,sda3和sdb3具有较高的值。 (我完全愿意扔掉新写的数据,但我认为这不相关)。

什么是恢复行动的最佳途径? 运行mdadm -A /dev/md2不执行任何操作,而mdadm --auto-detect不检测数组。

 $ sudo mdadm --query /dev/md2 /dev/md2: is an md device which is not active $ sudo mdadm --query /dev/sda3 /dev/sda3: device 0 in 3 device undetected raid5 /dev/md2. Use mdadm --examine for more detail. 

然而,运行mdadm --examine --scan -c none会使用正确的UUID打印数组,所以很显然它会find它。 以下是/proc/mdstat的相关部分,将所有驱动器显示为备件:

 md2 : inactive sda3[0](S) sdc3[2](S) sdb3[1](S) 811868544 blocks 

我发现很奇怪,RAID5中的单个驱动器故障显然导致我的arrays无法访问。 🙁

这里最好的行动是什么?

如果在/ proc / mdstat中看到数组,则数组将被组合; 你需要启动它:

 sudo mdadm -R /dev/md2 

如果不启动,请尝试使用-v开关(详细)重新运行该命令并发布结果。

一旦激活,你应该能够检查它的状态,如果需要的话重新添加sdc3。