在 LVM 中恢复带有坏块的 MDADM Raid 5

在 LVM 中恢复带有坏块的 MDADM Raid 5

我很确定我正在处理填充的 RAID 5 阵列。其中两个驱动器被列为故障/proc/mdstatmdadm详细信息如下:

   0     0       8       33        0      active sync   /dev/sdc1
   1     1       0        0        1      faulty removed 
   2     2       0        0        2      faulty removed 
   3     3       8        1        3      active sync   /dev/sda1

md127 : inactive sdd1[0](S) sdb1[3](S) sde1[2](S) sdc1[1](S)
      3907039744 blocks

所以sdb和sdd失败了。然后我对我的驱动器进行了智能诊断并确认我已经得到了当前待定部门,两个故障磁盘上大约有 1000 个。

然后运行 ​​badblocks 确认我确实有很多 badblocks。尝试手动将这些清零将是一场彻头彻尾的噩梦,在 RAID5 中我可以组装但无法再启动,然后在 LVM 中让它变得非常痛苦。我认为遵循这样的事情是行不通的。

如果人们确认 MHDD 可以工作(建议?),我愿意使用 MHDD,当我尝试它时它很慢,所以我中止了,而是开始备份驱动器。

http://hddguru.com/software/2005.10.02-MHDD/mhdd_manual.en.html#scanning

目前正在进行 ddrescue 并将数据移动到其他磁盘,希望能够制作主副本 - 可能将填充的驱动器归零,然后dd复制回这些驱动器。虽然了解不多,但ddrescue我觉得我只是在转移我的问题,而不是解决它。

http://www.gnu.org/software/ddrescue/manual/ddrescue_manual.html

答案1

要更新,我知道这是一个旧问题,但我确实解决了这个问题。我曾经ddrescue这样做过http://www.gnu.org/software/ddrescue/manual/ddrescue_manual.html

基本上,我的 MDAMD RAID 5 阵列中有 4 个 1TB 驱动器,其中有 2 个损坏。我有 2 个 1TB 驱动器,它们大小相同(或稍大),我基本上是ddrescue在一个针对“好”磁盘的损坏驱动器上进行的。然后我chkdsk在恢复的“好”磁盘上运行。我对另一个驱动器执行了此操作,然后将两个新驱动器添加回阵列并运行我的 LVM 并测试它们是否工作。一切都很好。

格式化损坏的驱动器,然后dd用测试它们,我发现它们没有任何问题,损坏是由于停电造成的。然后,我将“好”驱动器放回原始驱动器,将它们添加到阵列中,进行测试等...并将我的“好”驱动器放回到存储中,它们是旧的,而不是像所有其他驱动器一样的 AV 驱动器,所以我不想和他们一起冒险。badblockschkdsksmartmontoolsdd

相关内容