我的 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 中,但是至少看起来没有什么东西是完全丢失的。