![Linux RAID 重塑已停止](https://linux22.com/image/1334290/Linux%20RAID%20%E9%87%8D%E5%A1%91%E5%B7%B2%E5%81%9C%E6%AD%A2.png)
在过去的 8 个小时里,我的mdadm
重塑过程一直停滞不前。输出是:
Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [multipath]
md0 : active raid6 sdo[11] sdn[12] sdm[13] sdl[14] sdk[15] sdj[16] sdi[17] sdh[20](F) sdg[19] sdr1[1] sds1[2] sdt1[3] sdu1[4] sdp1[10] sdq1[6] sde1[0] sdd1[7] sdb1[9] sdc1[8] sdf1[5]
17581607424 blocks super 0.91 level 6, 64k chunk, algorithm 2 [20/19] [UUUUUUUUUUUUUUUUUU_U]
[====>................] reshape = 23.2% (453532992/1953511936) finish=6484322.5min speed=3K/sec
计数一直保持准确453532992
,速度逐渐减小至 0(未达到 0,因为这是平均速度,之前很长时间速度都很好)。我可以看到其中一个驱动器已标记为故障,这让我有点担心。重新整形完成后,我可以重建该驱动器(我知道这不是硬件故障),但按照这种速度,这不会发生。
有人有什么建议吗?我能做些什么来mdadm
重新开始吗?
编辑:更有趣的是,系统似乎出了其他问题。当我尝试读取根文件系统上的任何内容时,出现了 I/O 错误。RAID 文件系统仍在运行,但某些进程卡住了,无法卸载它。而且根文件系统上的错误似乎阻止了干净的重启。
所以我想这是可能的所有问题都出在根设备上,与 RAID 无关,只是因为无法读取所需的内容而无法继续重塑?我不确定。但如果我无法进行干净重启,如果我不得不硬重启盒子,重塑会发生什么?如果根驱动器物理上已损坏,我需要在新驱动器上安装操作系统怎么办?那么阵列会发生什么?
答案1
我思考最终的问题是根驱动器(不是 RAID 的一部分),它是一个固态驱动器,通过重新塑造的备份文件被严重过度使用。
此外,我发现一篇讨论该主题的帖子,主要建议:
所以要从我的错误中吸取教训,永远不要将备份文件放在闪存等“易失性”介质上。
根驱动器上的 I/O 基本上已损坏,无法用于任何用途,包括运行执行任何有用的操作(例如正常关闭)所需的命令。我对盒子进行了硬电源循环,并希望一切顺利。
当它恢复时,根驱动器工作正常。至少可以观察到。RAID 组装不正确,因为它只尝试使用原始的 11 个驱动器,而不是全部 20 个驱动器。我告诉它mdadm
停止阵列,然后从我所知道的 20 个设备重新组装它。一旦我这样做了,它就会从中断的地方重新开始重新成形。