恢复 ext4 分区上无法读取的目录

恢复 ext4 分区上无法读取的目录

我的 SSD 上的 ext4 文件系统中的一个目录变得无法读取,我需要恢复该文件。

以下是我导致文件系统崩溃的操作:

我意外地在目录中创建了 150 万个小文件,然后使用 删除了它们find . -name "xyz*" -delete

当我注意到目录文件仍然很大时,我启动了一个实时系统(Ubuntu 14.04)并缩小了fsck -D /dev/sdb1目录。没有错误。

再次启动我的真实系统后,该分区仅以只读方式安装,并且每次后续运行都会fsck -f -y /dev/sdb1抱怨相同的错误,即目录块包含未分配的块并声称要修复它。

不幸的是,下次运行 fsck 时会显示完全相同的错误,就好像更改根本没有写入磁盘一样。当我尝试 cd 进入目录时,我收到无法读取的错误。

我现在正在创建该分区的副本。

我有什么办法可以修复目录? 是使用单个文件恢复foremost还是magicrescue我唯一的选择? 或者是否有可以尝试恢复整个目录(除此之外fsck)的工具?

答案1

Ubuntu 15.10 附带的版本fsck.ext4比 14.04 附带的版本好得多,并且能够恢复文件系统。

现在许多文件都位于 lost+found 中,但是至少看起来没有什么东西是完全丢失的。

相关内容