我们有一台运行 CentOS 的 Dell PowerEdge T410 服务器,带有一个包含 5 个 Seagate Barracuda 3 TB SATA 磁盘的 RAID-5 阵列。昨天系统崩溃了(我不知道具体是怎么回事,也没有任何日志)。
启动 RAID 控制器 BIOS 后,我发现在 5 个磁盘中,磁盘 1 被标记为“丢失”,磁盘 3 被标记为“降级”。我强制备份磁盘 3,并用新硬盘(大小相同)替换磁盘 1。BIOS 检测到了这一点并开始重建磁盘 1 - 但是它卡在 %1。旋转的进度指示器一整晚都没有动过;完全冻结了。
我有什么选择?除了使用一些专业的数据恢复服务外,还有其他方法可以尝试重建吗?两个硬盘怎么会同时出现故障?这似乎太巧合了。有可能是磁盘 1 出现故障,导致磁盘 3“不同步”吗?如果是这样,我可以使用任何实用程序来使其恢复“同步”吗?
答案1
在您接受坏的回答,我真的很抱歉我的异端观点(它已经多次挽救了这样的阵列)。
你的第二故障磁盘可能存在小问题,可能是块故障。这就是原因,为什么坏的同步工具坏的raid5 固件崩溃了。
您可以使用低级磁盘克隆工具轻松创建扇区级副本(例如,救援可能非常有用),并将此磁盘用作新的 disk3。在这种情况下,您的阵列幸存下来,但数据损坏较少。
对不起,可能已经太晚了,因为在这种情况下正统答案的本质是:“raid5 中发生多次故障,这就是世界末日!”
如果您想要非常好的冗余 raid,请使用 linux 中的软件 raid。例如,其 raid 超级块数据布局是公开的且有文档记录... 我真的很抱歉,因为我又有这种异端观点。
答案2
您遇到了双磁盘故障。这意味着您的数据已丢失,您必须从备份中恢复。这就是为什么我们不应该在大型磁盘上使用 raid 5。您需要设置 raid,以便始终能够承受两个磁盘故障,尤其是大型慢速磁盘。
答案3
您的选择是:
- 从备份中恢复。
- 你做有备份,不是吗?RAID 不是备份。
- 你做有备份,不是吗?RAID 不是备份。
- 专业数据恢复
- 尽管费用昂贵且不能保证,但专业恢复服务有可能恢复您的数据。
- 尽管费用昂贵且不能保证,但专业恢复服务有可能恢复您的数据。
- 接受数据丢失并从经验中学习。
- 正如评论中所述,不建议将大型 SATA 磁盘用于 RAID 5 配置,因为重建期间可能会发生双重故障,从而导致阵列故障。
- 如果必须是奇偶校验 RAID,则最好使用 RAID 6,并且下次也使用热备用。
- SAS 磁盘因多种原因而更胜一筹,包括更高的可靠性、弹性以及更低的不可恢复位错误率(可能导致 URE(不可恢复的读取错误))
- 如上所述,RAID 不是备份。如果数据很重要,请确保已备份,并且备份已通过恢复测试。
- 正如评论中所述,不建议将大型 SATA 磁盘用于 RAID 5 配置,因为重建期间可能会发生双重故障,从而导致阵列故障。
答案4
为了准确回答“两个硬盘怎么会同时出现故障?”,我想引用本文:
争论的关键在于:随着磁盘驱动器变得越来越大(大约两年内翻了一番),URE(不可恢复读取错误)并没有以同样的速度改善。URE 测量不可恢复读取错误发生的频率,通常以每读取位错误数来衡量。例如,URE 率为 1E-14(10 ^ -14),从统计上讲,每读取 1E14 位(1E14 位 = 1.25E13 字节或大约 12TB)就会发生一次不可恢复读取错误。
...
论点是,随着磁盘容量的增长,URE 率不会以相同的速度提高,RAID5 重建失败的可能性会随着时间的推移而增加。从统计数据来看,他在 2009 年表示,磁盘容量的增长足以使 RAID5 在任何有意义的阵列中都毫无意义。
所以,RAID5 在 2009 年是不安全的。RAID6 很快也会如此。至于 RAID1,我开始用 3 个磁盘制作它们。使用 4 个磁盘的 RAID10 也同样不安全。