意外用 ext3 分区覆盖了硬盘的前 400MB - 可以挽救吗?

意外用 ext3 分区覆盖了硬盘的前 400MB - 可以挽救吗?

意外将 /dev/zero 写入 500GB 磁盘的前 371MB。是否可以重建分区表和/或恢复未被覆盖的数据?

答案1

尝试测试磁盘,这几乎是唯一一个可以从 ext3 中拯救一些东西的工具

答案2

如果只有磁盘的第一部分被覆盖,bacup超级块可能会帮助你

  1. 您可以使用mke2fs -n/dev/sdx 查看超级块位置
  2. 如果所有备份超级块mke2fs -n提供的内容都是错误的,你可以扫描它,hexdump /dev/sdx| awk '$6 == "ef53"' 例如
0000430 9eb6 6465 0000 ffff ef53 0001 0001 0000
8000030 9eb6 6465 0000 ffff ef53 0000 0001 0000
...

0x0000400(0000430-30)是主超级块,0x8000000(8000030-30)是备份超级块,
如果块大小为 4k(0x1000),则超级块8000030(0x8000030-0x30)/0x1000=32768

通过验证dumpe2fs -o superblock=32768/dev/sdx,如果它转储信息,则可能是您正在使用的文件系统。

  1. e2fsck -b 32768 /dev/sdx 修复超级块并继续 fsck。

相关内容