RAID5 2磁盘故障 – 要采取哪些步骤?

我有一个gentoo服务器上的6磁盘RAID5arrays。 mdadm报告说有两个磁盘出现故障。 如果磁盘实际上没有了,我准备将驱动器发送给专业人员进行恢复,但是除非有必要,否则我不希望这样做,而且我也不想让自己的恢复尝试生活更难。 也就是说,如果我能让arrays恢复正常运行,我宁愿这样做。

1)我应该立即采取哪些措施来降低数据丢失的风险?

2)告诉驱动器是否实际上已经死亡或刚标记为错误的最好方法是什么?

3)是否有重新启动机器和/或尝试自己重buildarrays的风险?

“备份欣赏周”(或称之为“备份欣赏周”)的后台应该是多么合适。

尝试自己做任何事情的问题是,只要运行驱动器,就会增加驱动器的降级量。 现在决定是否要把它发送给专业人士,如果是的话,就这样做。 据推测,如果这些数据足够重要,可以花费数千美元来恢复,那么这可能是你想要的,而不是以后的,所以现在就把它发送出去。

哦,和备份。 做好备份。 RAID不是备份,而且考虑到驱动器的大小(因此重build大型arrays所需的时间),RAID 5现在几乎不算冗余。

简答:构build一个可以容纳数据然后从备份恢复的非RAID 5arrays。

如果您没有备份“您做错了”

更长的版本:

考虑RAID 10.如果空间是一个问题,购买更多的磁盘,并且如果你的控制器支持它,或者购买更多的磁盘并且执行RAID 10,则转到RAID 6。 构build您的RAIDarrays,然后从上次备份中恢复您的数据。

您可能会使用RAID Reconstructorfind有用的信息,它是只读的,将扫描驱动器以确定它们的状态。 您显然需要能够将驱动器连接到另一个系统,而不是通过RAID控制器。 评估你的驱动器不会花费任何东西。

哭。 我们在两周内发生了两次这样的事情。 我们的空调机组是在弗里茨,温度监测器没有报告。 热量杀了我们的很多驱动器。

有趣的是,我们全新的数据中心正在为扩展做好准备,欢乐设施小组表示,不用担心,您的运行能力是46%。

后来我们发现他们把交stream单位的大小写错了2倍,实际上是97%的容量。 Oopsy。

然后我们增加了一大堆新的服务器,认为我们在交stream容量上有很多缓冲空间。

因此,我们有几个月的热量问题,因为我们需要他们让我们更大的空调压缩机,预计需要18个月。

世界上还有什么新东西?

womble的答案涵盖了最糟糕的情况,但有一个很好的机会,一个或两个磁盘是完全正确的。 如果您想自己尝试恢复数据,build议只尝试在恢复尝试中使用其中一个故障驱动器,并将另一个驱动器设置在一旁,以防您最终需要将整个RAID5发送到数据恢复公司。

使用价格低廉的SATA卡,即使只有其中一个有缺陷,我们也很less会一次性从RAID5中丢失两个驱动器。 我们也有几次在这两个驱动器都不好,我们不能可靠地查明RAID5故障的原因。 之后,我们改用RAID1configuration的大容量硬盘,并考虑在raidz2或raidz3上切换到ZFS。

正如别人提到的那样,恢复服务将无法从发生故障的驱动器中恢复数据。 你将不得不从你的RAID5发送所有的磁盘。

你应该知道,有不同程度的失败。 如果由于头部撞击而造成严重的物理伤害,唯一的希望就在于恢复服务,但是可能的是,您的数据已经消失。

如果您不能certificate将所有驱动器发送到数据恢复服务的成本,则可以使用dd或dd_rescue将驱动器的内容复制到正确的驱动器上,然后在重新组装RAID时对故障驱动器执行其他诊断并运行完整备份。 不幸的是,您可能无法确定您的文件是否正常,或者它们是否已损坏,除非您有近期的校验和列表或现有备份进行比较。

如果你能确定扇区0是坏的(通常在上电后通过重复点击来表示),那么你绝对不会走运。 一个Ontrack恢复代理告诉我,他们不能从我发送的驱动器中恢复任何数据,因为他们绝对需要能够写入Sector 0。我有点厌烦,因为我已经确定Sector 0在我之前是坏的把车开进去了,Ontrack没有提前做好自己的能力。

您可以通过查看系统日志和/或使用smartctl(来自smartmontools包)查看存储在驱动器上的SMART诊断信息来判断磁盘是否被错误地标记为失败。 如果smartmontools报告驱动器运行状况良好,并且没有任何重新分配的扇区(在“重新分配的扇区数”下),那么您的驱动器可能正常,您可以尝试重新组装RAID并进行备份。

对于未来,您可能还想考虑在raidz2或raidz3上使用ZFS设置OpenSolaris框。 这些将分别给您两倍或三倍的平价,让您在丢失数据之前丢失2(raidz2)或3(raidz3)硬盘。 此外,ZFS会对所有内容进行校验,因此您的文件系统不会像其他单磁盘或RAIDconfiguration那样容易导致无声的数据损坏。

在任何RAIDconfiguration中至less具有双奇偶校验是可取的,因为在更换和重build第一个发生故障的磁盘的过程中仍然有冗余。 (当然,在更换第一个出现故障的磁盘之前,您不应该等到2个磁盘出现故障。)

减less数据丢失的风险? 这可能太晚了。

至于启动机器的风险,如果RAIDarrays确实死了,那么重新启动机器不会让事情变得更糟。 如果它不像最初看起来那么糟糕,并且服务器将会启动,并且如果可以访问RAIDarrays及其数据,我的build议是尽快运行完整备份,并联系服务器\存储供应商以获得有关情况的input。

您可能已经将驱动器发送出去了,但我仍然会问:您使用的是什么品牌和型号的磁盘?

我问,因为任何不是RE(Raid Edition)型号的西部数据驱动器都有一个怪癖,即RAID控制器倾向于将它们从arrays中抛出,即使驱动器实际上仍然完好无损。

从WDC RE3页面:“特定于RAID的时间限制错误恢复(TLER) – 防止桌面驱动器常见的扩展硬盘错误恢复过程导致的硬盘崩溃。

基本上,如果驱动器有一些内部错误(对于您的数据来说不是非常致命的错误),那么在返回结果之前,非RE驱动器可能会花费很长时间处理它。 许多RAID控制器看到驱动器花了很长时间来回应,并将其标记为坏。 RE驱动器中的TLER“function”基本上只是将超时降低到RAID卡所能接受的水平。

我不知道为什么这似乎是特定于WDC – 我还没有看到与其他制造商的桌面变种相同的问题。 我已经明确地看到和听到其他人有WDC桌面驱动器从arrays中随机抛出的问题,只有testing罚款和重build罚款。

如果您的驱动器是WDC桌面驱动器,很可能这是您的故障造成的,这意味着数据完好无损。 当然,这可能不会让你的数据更容易回来:)