puf*_*ish 2 mdadm software-raid
我有一个带有 4 + 1 个磁盘的软件 RAID5 阵列,其中 2 个磁盘出现故障。我希望通过一些冲击性维护,我可以让其中一个故障磁盘再次工作足够长的时间来执行块级复制以获取图像。
计划是使用 dd 制作 4 个(或全部 5 个)磁盘的映像,然后尝试在这些映像上重建阵列。
有没有什么我错过的东西会让这变得不可能?如果没有,我将如何:
显然,有很多事情可能会导致数据损坏,但有理由认为 4 个磁盘上的实际数据可能完好无损:
一般来说,这种方法会奏效。只要您有可用的磁盘(并且您不希望它们出现故障),您还可以使用设备映射器创建覆盖快照,而不是从磁盘中完全复制数据(将副本作为备份可能是一件好事, 尽管)。
一旦你有了图像文件,你就需要从它们中创建环回块设备
losetup /dev/loopX /path/to/imagefileX
Run Code Online (Sandbox Code Playgroud)
完成此操作后,您可以使用回送块设备组装您的阵列。如果您无法恢复最新的故障磁盘,因此冗余磁盘映像上的时间戳将与其他磁盘不同,则阵列将拒绝组装。只要您真的只对故障前写入的数据感兴趣,请查看内核 RAID 文档的“恢复故障的软件 RAID”部分。它应该可以帮助您将阵列与至少一些可恢复的数据组合在一起。