从损坏的 ext4 分区恢复元数据

从损坏的 ext4 分区恢复元数据

我有一个相当复杂的数据恢复任务。我想从损坏的 ext4 文件系统中获取一些元数据(文件名、目录结构等)。我尝试了很多工具(Testdisk、、fsckforemost但没有效果。我可能没有非常有效地使用它们中的大多数,因为我对文件系统只有基本的了解。或者这些工具可能不适合我的情况。这就是我把一切搞砸的方式:

我有一个硬盘驱动器,我不小心开始了覆盖过程。我用了这些 SATA USB 扩展坞之一,在处理它时我不小心按下了克隆按钮。这启动了从一个驱动器到另一个驱动器的克隆。它在我的硬盘上创建了一个新分区并开始在上面写入数据。大约一分钟后,我意识到了这一点,并停止了该过程并断开了驱动器的连接。

两个磁盘均已格式化为一个 ext4 分区。所以我的其中一个磁盘上的分区被破坏了,现在我无法访问其中的数据。我知道被覆盖的数据可能无法恢复,但大多数数据在这么短的时间内不会被触及。

幸运的是,我拥有的大部分文件都可以在互联网上的其他地方找到,所以我可以再次下载它们。但我需要获取文件和目录名称的列表才能做到这一点。我找不到可以成功完成此操作的工具。Testdisk看起来很有希望,但有了它我只能访问在克隆过程中创建的数据。谁能告诉我如何才能做到这一点?我将不胜感激任何帮助,谢谢。

答案1

如果您下载 e2fsprogs 源代码,您可以构建该findsuper工具来扫描磁盘以查找磁盘上的超级块。您应该能够找到两个不同的超级块 UUID - 那些来自磁盘开头的克隆副本,以及来自磁盘末尾的旧文件系统的 UUID。

如果您使用旧文件系统中的超级块运行 e2fsck,它可能能够恢复更多文件系统,例如旧日志块可以恢复到文件系统中。

无论如何,e2fsck(最好在磁盘上的备份映像上运行)将链接它可以找到的所有文件,lost+found因为磁盘开头的根目录肯定会被覆盖。

相关内容