情况
我用 Ranger 删除了大量文件,现在我正尝试使用 ext4magic 来恢复它们。我使用的是 Ubuntu 20.04,我不是高级用户。:)
我有一个带有两个分区的单个驱动器,我sda2
只将所有内容存储在其中。
user@machine$ mount | grep /dev/sd
/dev/sda2 on / type ext4 (rw,relatime,errors=remount-ro)
/dev/sda1 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
现在,我删除的文件位于 下/home/username/Downloads/compressed
。
准备
为了让 ext4magic 考虑这个驱动器,我必须做以下事情(基于这个答案):
- 在启动时启动恢复并选择“root 模式”
- 安装外部驱动器并导航到那里
- 使用以下方法将状态更改
sda2
为只读mount -o remount,ro /dev/sda2
- 运行 ext4magic
问题
ext4magic 似乎无法识别我删除文件的目录。
root@barat:/mnt# ext4magic /dev/sda2 -a $(date -d "-1 days" +%s) -f home/username/Downloads/compressed -l
Filesystem in use: /dev/sda2
Using internal Journal at Inode 8
Activ Time after : Wed Mar 3 19:36:06 2021
Activ Time before : Thu Mar 4 19:36:06 2021
Warning: error-NR 2133571476 can not found file: home/username/Downloads
Error: Inode not found for "home/username/Downloads/compressed"
Check the valid PATHNAME "home/username/Downloads/compressed" and the BEFORE option "Thu Mar 4 19:36:06 2021"
ext4magic : EXIT_SUCCESS
更准确地说,它无法识别其“父”目录(即“下载”)。
然而,奇怪的是,当我在主目录(即其父目录之一)上尝试时,它确实显示了文件列表:
ext4magic /dev/sda2 -a $(date -d "-1 days" +%s) -f home/username -l
此列表包含来自主文件夹其他子目录(例如.local
)的文件,并且似乎显示早先删除的文件。但是,我没有看到任何提及“下载”目录中的文件。
(有一个类似的问题在这篇文章中,但没有任何错误消息,也没有答案)。
问题
这里发生了什么?我该怎么做才能恢复已删除的文件?
更新
我也尝试使用debugfs
(还有'lsdel')来查找已删除的 inode(基于这个答案),但结果一无所获。