我的任务是从发生故障的 Buffalo NAS 中恢复 RAID。NAS 盒发生故障,但我们目前的理解是驱动器仍在运行。我相信 Buffalo 的 NAS 在 4x1TB 驱动器的 RAID5 中使用了 mdraid+Linux。我的理解是,mdadm
它不够智能,无法自行找出驱动器的正确条带化。
我看过 DEFCON 上关于“通过视觉和声音重建 RAID”的演示,因此我知道一些在可以访问驱动器的情况下手动确定顺序的技术。我不确定如何以非破坏性的方式处理这些。我甚至不确定我是否能访问 4TB 的暂存空间来存储工作映像。
我会在进行/研究时进行更新,但如果能得到一些关于如何进行的指示,我将非常感激!
答案1
我很确定 mdadm 可以正常工作。它已经可以告诉驱动器在阵列中的位置,例如:
# mdadm -Q /dev/sda
/dev/sda: is not an md array
/dev/sda: device 3 in a 3 device unknown raid5 array. Use mdadm --examine for more detail.
并且,在某些循环设备上使用 RAID5 阵列时,它似乎会不管驱动器的指定顺序如何都组装阵列:
# mdadm -A /dev/md0 /dev/loop[012]
mdadm: /dev/md0 has been started with 3 drives.
# mdadm -A /dev/md0 /dev/loop[210]
mdadm: /dev/md0 has been started with 3 drives.
我认为您的情况很好,假设驱动器可以运行并且数据完好无损。如果您可以在使用驱动器之前对其进行映像处理,那么显然这是最安全的做法。也许您有一些朋友正在计划购买驱动器?您可以短暂地使用这些驱动器进行备份,然后将其送去。