我有一台 MacBook,我本想使用 Ubuntu 进行双启动,但在创建分区后,我点击了“擦除磁盘并安装 Ubuntu”,因此我为 Ubuntu 创建的分区没有被使用,所以我认为我的整个 macOS 及其所有文件都消失了。然而,最近我读到,我应该能够恢复犯这个错误之前的许多文件。
我听说过 TestDisk,但“foremost”这个工具对我来说似乎更好。我用它来搜索磁盘擦除之前的 png 文件,然后我输入了foremost -t png
,它应该从硬盘上的原始字节数据中搜索 png 文件,寻找标准的 png 页眉/页脚/模式/等等。
我运行这个程序一整晚,但什么也没出现。当 foremost 启动时,它打印了一个管道,|
我以为是状态栏的开头(||||
大约 10% 左右),但没有打印出更多的管道。
程序是否可能永远运行下去?我可以指定其他参数来加快速度,但我需要花一些时间来理解它们,因为我不是 IT 专家(但我是软件开发人员)。
这个工具是否只为 Linux 设计,因此当搜索(以前的)mac 硬盘时,它不会寻找正确的模式?
提前致谢。
答案1
我会尝试 PhotoRec(来自测试磁盘作者,它在 Ubuntu/Debian 的 testdisk 包中),它很好终端/ascii gui用于选择要恢复的文件格式的菜单,可以搜索全部或仅搜索可用空间,并显示进度。
我也没有办法让 foremost 工作,显然它仍然是一个基本的命令行程序,但快速搜索显示了几个使用 foremost 的有希望的链接:
- 如何使用 Foremost 恢复 Linux 中已删除的文件- 基本上只是在设备上运行选项
foremost
-不清楚是否搜索整个设备(查找每个文件)或仅查找可用空间(仅查找已删除/丢失的文件,没有任何其他选项,我猜它会找到所有文件。-t [filetype]
-I
- 恢复已删除的文件- 与上述相同,但添加了一个输出文件夹选项
-o
,并且首先输出一个audit.txt
文件,显示其版本、查找位置和找到的内容。 - Unix 和 Linux 问:使用 foremost 恢复已删除的文件- 这意味着最重要的是需要访问它正在搜索的设备(可能需要以 root/sudo 身份运行),并且可能有更好的程序可以取消删除文件,例如
ntfsundelete
TestDisk。
TestDisk 本身擅长取消删除文件,如果它了解文件系统,它可以浏览所有文件(已删除的和常规的)并将它们复制到另一个目的地,也许还带有它们的原始文件名。
答案2
最重要的是卡住处理:stdin。正如它所说,它会尝试处理 stdin,即标准输入,由于您没有向 stdin 提供任何数据,因此它会等待,直到打印出文件结束字符。
您可能没有正确指定输入设备。例如,如果您在运行 foremost 之前卸载了要扫描的分区,则它会恢复使用 stdin。
答案3
要找到与 foremost 一起使用的设备,请尝试:
lsblk (如果是 USB 设备) 然后使用您得到的结果。我得到/dev/sda1
:
foremost -v -q -t rar -i /dev/sda1 -o /home/myuser/Downloads/tmp/
找到/dev/device
您想要恢复的文件。
答案4
问题可能是最重要的是没有读取磁盘的权限。
对我来说,解决方案是以管理员身份运行它:
sudo foremost ...