我可以在部分图像上运行 fsck 吗?

我可以在部分图像上运行 fsck 吗?

我有一个 4TB 外置 USB 驱动器,似乎存在一些硬件问题。我无法安装它,并且出现一些 IO 错误。

我现在正在使用 testdisk 创建 ext4(可能是 ext3?)分区的映像,但我没有 4TB 的空间来复制整个分区。但我可能不需要恢复 4TB 的数据,可能只有 50GB。当我尝试对 testdisk 迄今为止复制的内容运行 fsck 时,我收到错误:

# fsck.ext4 -y image2.dd 
e2fsck 1.43.4 (31-Jan-2017)
ext2fs_open2: Bad magic number in super-block
fsck.ext4: Superblock invalid, trying backup blocks...
Superblock has an invalid journal (inode 8).
Clear? yes

*** journal has been deleted ***

The filesystem size (according to the superblock) is 976712704 blocks
The physical size of the device is 9188066 blocks
Either the superblock or the partition table is likely to be corrupt!
Abort? yes


image2.dd: ***** FILE SYSTEM WAS MODIFIED *****

答案1

日志通常位于末尾,如果您没有复制日志,fsck则会遇到更多麻烦。您还可以看到,它抱怨大小不匹配。

所以虽然你肯定在部分图像上运行fsck,结果不会令人满意......

我想不出有什么好办法可以在不复制完整图像的情况下做到这一点。

debugfs如果你想直接干预 ext 文件系统,那么这是可行的,但是你需要很好地理解 ext 文件系统的工作原理。

相关内容