Tim*_*Tim 9 data-recovery pdf files
我在以下过程中不小心丢失了一个pdf文件
我在 Ubuntu 18.04 中的 Wine 中运行 pdf 软件应用程序 PDFXCView,以在 ext4 文件系统中打开 pdf 文件。
然后我mv
将pdf文件放在其他地方。
这里有一些尝试。
如果有帮助,我记得丢失的 pdf 文件的路径名。
我无法通过 备份文件系统的分区dd
,因为我没有额外的硬盘驱动器具有足够大的分区容量。
我debugfs
根据
https://unix.stackexchange.com/a/80285尝试过,
$ sudo debugfs -w /dev/sda4
debugfs: lsdel
Inode Owner Mode Size Blocks Time deleted
22549259 1000 100600 141 1/ 1 Sat Apr 2 09:14:06 2016
1 deleted inodes found.
debugfs: logdump -i 22549259
22549259: File not found by ext2_lookup
Run Code Online (Sandbox Code Playgroud)
该文件只是丢失了,而不是在 2016 年被删除,所以我不确定它是否找到了正确的 inode。
我在https://unix.stackexchange.com/a/98700/看到说使用
grep -a -C 500 'known pattern' /dev/sda | tee /tmp/recover
Run Code Online (Sandbox Code Playgroud)
恢复包含已知模式的文本文件。
不久前,我通过使用连接几个较小的 pdf 文件来创建丢失的 pdf 文件pdftk
,但我仍然有那些较小的文件。从一个较小的 pdf 文件,我可以看到一个较小的 pdf 文件的二进制内容cat smaller.pdf | less
,其中包含一个可读的 pdf 格式特定字符串
/URI (http://flask.pocoo.org/docs/1.0/api/#flask.Flask.logger)
Run Code Online (Sandbox Code Playgroud)
所以我试过:
sudo grep -a -C 500 'http://flask.pocoo.org/docs/1.0' /dev/sda4 > /tmp/test/recover
Run Code Online (Sandbox Code Playgroud)
因为那些小文件和丢失的文件都包含字符串, -C 500
指定文件的开头和结尾太随意了。我不确定它能否产生有用的结果。
我想知道我可以尝试哪些方法来恢复 pdf 文件?
谢谢!
如果可能的话,一定要从单独保留数据的分区开始(如果它不是您的主系统分区,您会惊讶于即使在一个月后您还可以恢复)。然后继续foremost
(我最初提到magicrescue
但foremost
性能一样好,但它有一个现成的收据pdf
sudo apt update && sudo apt install foremost
sudo foremost -v -t pdf -i [PATH] -o ~/pdfrecovery/
# -t - Filetype [in our case pdf]
# -i - Input file [can be as wide as /dev/sdX or more detailed]
# -o - Output Directory
Run Code Online (Sandbox Code Playgroud)
我只是在我的一个/dev/sdX
驱动器上运行了几秒钟并提取了 370 个 pdf 文件。这些文件将没有原始名称,看起来像这样:14348984.pdf
因此-i
标志非常重要。
祝你好运。
您的第二个选择是testdisk
/photorec
在您的情况下,在处理已知路径时可能更容易。testdisk
并且photorec
确实有一些警告,如果不小心(并且碰巧确认多个对话框询问您是否要应用更改)可能会导致磁盘损坏,但是如果您慢慢来,它可能更合适,并且可能会显示得更快您是一个良好的文件夹树结构,其节点对应于您丢失的文件。如果您foremost
在 2 小时内没有找到您的文件,请发表评论,我将提供辅助testdisk
方法。
当我刚刚测试它时,在定位特定的已删除文件方面testdisk
被压垮foremost
了。它完美地保留了文件夹树和文件名结构,从而限制了创建每个*.pdf
文件所花费的时间。这两种方法大不相同,如果该文件是非常重要的,我肯定会同时使用testdisk
,并foremost
找到相同的文件,以确保我结束了一个完整的非破坏的文件。