从 ISO 文件和磁盘内的分区读取 RAID 阵列

从 ISO 文件和磁盘内的分区读取 RAID 阵列

mdadm如果我的磁盘实际上是分区,并且其中一些是映像文件,而不是实际磁盘,那么如何使用组装 RAID5 阵列?我正在使用 Ubuntu 18.04

我有一个旧的 RAID 5 阵列需要恢复。它曾经由三个 2 TB 磁盘组成,每个磁盘上都有一个 2 TB 分区。我有两个作为映像文件(使用 创建dd),一个作为实际 HDD。我希望访问 RAID5 阵列的内容,但我甚至无法重新组装阵列,更不用说安装它了。以下是我尝试的方法:

为图像文件创建循环设备

losetup -Pf image1.iso
losetup -Pf image2.iso

创建自定义~/raid-mdadm.conf

DEVICE /dev/sdc1
DEVICE /dev/loop17p1
DEVICE /dev/loop33p1

尝试运行mdadm --assemble

mdamd --assemble --scan --verbose --config=~raid-mdadm.conf

但是,此操作失败并出现以下错误:

mdadm: looking for devices for further assembly
mdadm: Merging with already-assembled /dev/md/0
mdadm: cannot re-read metadata from /dev/dm-8 - aborting
double free or corruption (!prev)
Aborted (core dumped)

如果我不指定我的自定义--config选项,或者我使用--config=partitions,则输出显示它实际上并没有在阶段考虑/dev/sdc1/dev/loop17p1或。/dev/loop33p1--scan

PS:如果您想知道为什么涉及这些分区,请不要问我。我不记得为什么我在 10 多年前就决定这样做了。如果您想知道为什么我没有所有磁盘或所有映像,这是因为我的计算机似乎不想同时识别多个磁盘,而且我没有足够的可用存储空间来存放第三个映像我想要恢复的数据。

PS2:我也很乐意使用其他东西来重组我的 RAID 阵列mdadm

答案1

使用该man mdadm命令并检查阵列的完整性,用于mdadm --zero-superblock --force清理可能已经包含服务信息的失败尝试的超级块。

对于 6 盘 1TB 磁盘的 RAID-5,BER 导致的故障率估计为 4-5%,而 4 盘 4TB 磁盘的故障率已经达到 16-20%。如果使用 BER(位错误率),则在大量读取整个磁盘卷时,故障概率会进一步增加。RAID-5 这是第一个也是最后一个错误。我已经可以在这里看到它:/dev/md/0vs /dev/md0。检查您的“raid-mdadm.conf”文件。

相关内容