下一页 上一页 目录

8. 重建

本 HOWTO 已过时;Linux RAID HOWTO 由 linux-raid 社区维护,网址为 http://raid.wiki.kernel.org/

如果您已经阅读了本 HOWTO 的其余部分,您应该已经对降级 RAID 的重建过程有了很好的了解。让我们总结一下

就是这样。

通常情况下是这样,除非您运气不好,并且您的 RAID 由于冗余磁盘之外的更多磁盘发生故障而变得无法使用。如果多个磁盘位于同一总线上,并且一个磁盘崩溃时带走了总线,则实际上可能会发生这种情况。其他磁盘,即使完好无损,RAID 层也无法访问,因为总线已关闭,它们将被标记为故障。在 RAID-5 中,您只能备用一个磁盘,丢失两个或更多磁盘可能是致命的。

以下部分是 Martin Bene 给我的解释,描述了从上面概述的可怕场景中恢复的可能性。它涉及到在您的 /etc/raidtab 中使用 failed-disk 指令(因此对于运行已打补丁的 2.2 内核的人员,这仅适用于 2.2.10 及更高版本的内核)。

8.1 从多磁盘故障中恢复

场景是

简而言之:您经常会遇到多个磁盘同时发生临时性故障;之后,RAID 超级块会失去同步,您将无法再初始化您的 RAID 阵列。

如果使用 mdadm,您可以首先尝试运行

  mdadm --assemble --force
如果不行,还剩一件事:通过 mkraid --force 重写 RAID 超级块

为了使此方法有效,您需要有一个最新的 /etc/raidtab - 如果它与原始磁盘的设备和顺序不完全匹配,这将无法按预期工作,但很可能会完全清除您磁盘上曾经拥有的任何数据

查看尝试启动阵列产生的 sylog,您将看到每个超级块的事件计数;通常最好忽略事件计数最低的磁盘,即最旧的磁盘。

如果您在没有 failed-disk 的情况下 mkraid,恢复线程将立即启动并开始重建奇偶校验块 - 这不一定是您当时想要的。

使用 failed-disk,您可以准确指定要激活哪些磁盘,并可能尝试不同的组合以获得最佳结果。顺便说一句,在尝试此操作时,仅以只读方式挂载文件系统... 这已被至少两个与我联系过的人成功使用。


下一页 上一页 目录