LSI 2108 RAID 5,一个磁盘死了,另一个坏扇区; 我怎样才能恢复数据?

我有一台配有RAID LSI Logic / Symbios Logic MegaRAID SAS 2108 [Liberator]的服务器和4个连接了3TB的磁盘,configuration为RAID 5.不幸的是,经过3年的良好服务,一个磁盘死了(磁盘已经没有了),另一个磁盘一些坏的部门。

我需要从2天前恢复一些数据,但我无法安装和/或find一种方法来做到这一点。 我怎么不知道正确的方式来恢复一些数据,我停止服务器,我正在寻求帮助。

我可以采取哪些步骤来恢复arrays上的数据?

这是RAID5arrays上的一个“经典”问题:当一个磁盘死亡时,您发现其他磁盘坏了。 在这种情况下,许多硬件RAID控制器只是简单地删除整个arrays(或拒绝启动它)。

如果您的RAID控制器有一个“强制”模式来使arrays联机(虽然有一些不可避免的数据损坏),请使用它。

如果没有,你应该能够恢复这样做:

  1. 获取与坏扇区相同的磁盘
  2. ddrescue (或dd_rescue,用Debian的说法)把这两个磁盘连接到一个Linux机器上,
  3. 使用ddrescue <bad_drive> <new_drive>命令将旧磁盘复制到新磁盘
  4. 让它完成,然后将新驱动器连接到您的RAID控制器, 分配给坏的一个相同的插槽/位置
  5. 你的数组应该上线,虽然有一些不可避免的数据损坏。
  6. 在虚拟磁盘/arrays上进行完整的文件系统检查

如果幸运的话,损坏的数据将驻留在空闲/未分配空间中,不会造成数据丢失。

否则,你可能会失去一些东西。 如果这是不可接受的风险,请忘记上述步骤:销毁/重新创buildarrays并从备份中恢复。