恢复 Linux RAID1 - FAT32 但显示 ext2,无法组装,但显示备份超级块...我被卡住了

恢复 Linux RAID1 - FAT32 但显示 ext2,无法组装,但显示备份超级块...我被卡住了

我在 linux RAID1 中有 2 个物理磁盘,我不知道发生了什么,我认为某个不应该进入系统的人在系统运行时尝试添加新磁盘时错误地对 md0 进行了分区。无论如何,在重新启动时,它进入了 grub。我花了几天时间尝试使用 systemrescueCD 修复此问题,并在停止之前停止了显示“UU”的阵列,所以它应该没问题,但我在重新组装它并使其恢复正常运行时遇到了问题。我不知道该怎么做。它显示 FAT32 文件系统,但也显示 ext2,并显示备份超级块,但也显示不存在超级块。提前感谢您的帮助!!

以下为截图

  • 以下是磁盘
    以下是磁盘]1

  • 超级块备份似乎存在
    超级块备份似乎存在

  • 驱动器和文件系统结构
    驱动器和文件系统结构

  • 无法使用备份超级块,错误的魔法数字
    无法使用备份超级块,错误的魔法数字

  • 也无法强制组装
    也无法强制组装

答案1

我怀疑这对您的情况是否有帮助,但我想指出恢复阵列内文件系统的理论情况。它是镜像 RAID,因此您不需要 MD 系统来访问文件系统。您只需要知道它在哪里。

取决于您拥有的是超级块版本 0.9、1.0、1.1 还是 1.2,超级块位于开头或结尾。如果位于结尾,则组件分区(例如)/dev/sda2应该可以作为文件系统安装。如果位于开头,则可以使用 创建一个具有偏移量的循环设备losetup。(注意:切勿重新组装执行此操作的阵列,因为驱动器不同步)

例如,losetup --find --verbose --offset 4096 /dev/sda2将在 上创建一个循环设备/dev/sda2,从分区中的 4096 个字节开始。这可能适用于 MD 超级块 1.2。免责声明:未经测试的命令,但理论是合理的。

然后你可以ddpv它放入一个新的 MD 数组中:

  • 创建新的 MD 阵列、设备/dev/mdXYZ
  • pv /dev/loopX > /dev/mdXYZ

当然,要真正从它启动,或者以其他方式让它在另一台机器上工作,还有很多事情要做,但这超出了这里的范围。

相关内容