dumpe2fs 没有找到任何超级块

Miq*_*ell 2 hard-drive data-recovery

我有一个非常糟糕的高清。我准备接受已死,但我想从中恢复数据。

在其上运行坏块会提供一个巨大的数字列表。

尝试在其上运行 fsck.ext4 只是说:

fsck.ext4: Attempt to read block from filesystem resulted in short read while trying to open /dev/sdd1
Run Code Online (Sandbox Code Playgroud)

所以我猜第一个超级块是油炸的。

我正在尝试使用备份超级块,所以我正在尝试使用 dumpe2fs 确定它的位置,但我只是得到:

$ sudo dumpe2fs /dev/sdd
dumpe2fs 1.42.9 (4-Feb-2014)
dumpe2fs: Attempt to read block from filesystem resulted in short read while trying to open /dev/sdd1
Run Code Online (Sandbox Code Playgroud)

我想一切都在读取我的 HD 为空,不是吗?

有什么办法可以恢复吗?

有没有办法猜测超级块备份的位置?

非常感谢。

mon*_*r35 8

当命令dumpe2fs /dev/sdd发送错误时,还有另一种获取超级块备份位置的方法:

mkfs.ext4 -n /dev/sdd
Run Code Online (Sandbox Code Playgroud)

来自 man mkfs.ext4

-n导致 mke2fs 实际上不创建文件系统,而是显示如果要创建文件系统它会做什么。这可用于确定特定文件系统的备份超级块的位置,只要再次使用最初创建文件系统时传递的 mke2fs 参数即可。

然后,您只需使用超级块修复您的分区:

fsck -b 98304 /dev/sdd
Run Code Online (Sandbox Code Playgroud)

替换98304为您的超级块编号。