linux – 无法从失败的RAID中恢复

linux – 无法从失败的RAID中恢复,第1张

概述我的情况与 this one不同. 我有一个带有3个硬盘的CentOS系统,以及以下软件RAID阵列: /boot on RAID 1 over 2 disks/ on RAID 5 over 3 disksswap on RAID 0 over 2 disks (I believe) 我的第3次开车失败了一开始没什么大不了的,阵列还在运转.但是在1天之后,当我准备交换坏磁盘时,系统无法再使用 我的情况与 this one不同.

我有一个带有3个硬盘的CentOS系统,以及以下软件RAID阵列:

/boot on RAID 1 over 2 disks/ on RAID 5 over 3 disksswap on RAID 0 over 2 disks (I belIEve)

我的第3次开车失败了一开始没什么大不了的,阵列还在运转.但是在1天之后,当我准备交换坏磁盘时,系统无法再使用新磁盘启动:

md: md2: raID array is not clean -- starting background reconstructionraID5: cannot start dirty degraded array for md2raID5: Failed to run raID set md2[...]Kernel panic

它停在那里.我没有壳.我试过但是在Rescue磁盘上,但我不知道怎么去那里:我的阵列没有看到,所以我无法重建它们.如果我使用2个磁盘启动,或者使用坏磁盘作为我的第3个驱动器,则完全相同的问题.

现在我有一个新驱动器,如何修复阵列?

解决方法 不知怎的,你已经设法将阵列停止在脏状态(这意味着RAID系统无法确定所有磁盘上的奇偶校验是否正常).如果机器突然断电或其他一些写入空穴引发事件,就会发生这种情况.

我怀疑使用–force选项从救援CD手动重新组装阵列可能会起作用,如下所示:

mdadm --assemble --force /dev/md2 /dev/sda2 /dev/sdb2 missing

(用构成RAID-5阵列的现有设备替换/ dev / sd …).假设这有效并且/ proc / mdstat显示已组装的数组(处于降级状态),那么您可以添加新分区,如下所示:

mdadm /dev/md2 --add /dev/sdc2

如果最初的强迫组装不能解决问题,那么你就是在小溪的深处.几分钟与谷歌发现http://www.linuxforums.org/forum/servers/77867-eeek-cant-assemble-degraded-dirty-raid6-array.html似乎处理类似的问题,所以它可能值得尝试在那里工作(echo“clean”> / sys / block / md0 / md / array_state)但是这是一种稍微丑陋的做事方式.

无论您如何设置将RAID设置重新组合在一起,它是脏的和降级的事实意味着内容实际上不再受信任.文件系统可能有元数据损坏(fsck应修复),或者一个或多个文件的内容可能已损坏(如果不验证分区上所有文件的内容,您将无法知道).

总结

以上是内存溢出为你收集整理的linux – 无法从失败的RAID中恢复全部内容,希望文章能够帮你解决linux – 无法从失败的RAID中恢复所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/1036104.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存