如何使用 live usb 在 ubuntu 中恢复已删除的文件?[基于文件类型]

kir*_*bnl 15 filesystem command-line files data-recovery

我不小心从 Ubuntu 桌面上删除了一些文件。现在我只需要恢复 /home/user 目录中的 perl 文件。如何才能做到这一点?我可以使用实时 Ubuntu USB 启动。请解释。

kar*_*rel 22

在你开始之前:

  • 已删除数据的副本开始工作始终是个好主意,因此在开始之前复制整个磁盘
  • 如果不能,请在开始之前从 Live-USB/DVD 启动
  • 如果您不能,请知道您现在写入磁盘的每个字节都会覆盖其中一个已删除文件的一个字节!(即通过安装 PhotoRec 和 TestDisk,如果您继续,一些已删除的文件将被您要安装的应用程序覆盖!)。

TestDisk 和 PhotoRec 之间的主要区别是什么?

TestDisk 比 PhotoRec 高效得多。TestDisk 的问题在于它并不总能恢复所有已删除的文件。如果您不小心重新格式化了一个分区,TestDisk 可以恢复数千个文件而不会丢失一个文件,但是如果您通过将文件发送到废纸篓然后清空废纸篓来删除文件,则 TestDisk 无法始终恢复它。

所以首先使用TestDisk,如果你用TestDisk恢复了所有被删除的文件,那么你就完成了。如果您使用 TestDisk 恢复了大部分已删除的文件,您可以决定是否完成。如果您在运行 TestDisk 后还没有完成,您可以尝试使用 PhotoRec 恢复已删除的文件。

PhotoRec 可以根据文件类型有选择地恢复文件,但 PhotoRec / TestDisk 不能有选择地扫描单个目录以查找丢失的文件,除非您已将整个硬盘分区安装为该目录。在某些情况下,文件名存储在文件本身中。在这种情况下,PhotoRec 会尝试恢复文件名,但大多数情况下 PhotoRec 无法恢复文件名。


使用 PhotoRec 根据文件类型恢复文件

  1. 从 Ubuntu 软件中心安装 TestDisk。

     sudo apt-get install testdisk
    
    Run Code Online (Sandbox Code Playgroud)
  2. 启动 PhotoRec。

    打开终端并启动 photorec(以 root 身份)。

     sudo photorec
    
    Run Code Online (Sandbox Code Playgroud)
  3. 选择硬盘。

  4. 选择分区类型。

    如果您的硬盘有 Linux 分区,则选择[Intel]

  5. 选择文件类型选项。

    移至[File Opt]并按下Enter。在这里,您可以按 禁用所有文件类型s。使用空格来切换复选按钮。选择要恢复的文件类型。对于 Perl,您可以选择plPerl 脚本或pmPerl 模块。

  6. 选择选项。

    Photorec 还有一个不同选项的列表。在正常情况下,您不需要修改它们。

  7. 选择分区。

    将选择器向上或向下移动到已从中删除文件的分区。然后选择[Search]并按Enter

  8. 选择文件系统类型。

    如果您使用的是 Linux,它将是 ext2/ext3/ext4,因此默认选择是ext2/ext3. 否则,如果您要从格式化为 FAT 或 NTFS 的分区中恢复文件,请选择Other

  9. 选择空间进行分析。

    选择Free,如果你不写删除特定文件后,该分区,否则选择Whole

  10. 为恢复的文件选择一个目录

    选择存储恢复文件的路径。然后按Y

Photorec 将显示它已恢复的文件数量。

来源:修订自How To Recover Deleted Files in Linux Using Photorec

  • 我首先尝试“testdisk”,然后尝试“photorec”:“photorec”将恢复所选分区中的所有文本文件,没有元数据(因此恢复的文件中没有文件名),并且可能恢复数千个文件。如果文件系统条目尚未被“testdisk”覆盖,则可以仅恢复单个已删除的文件夹/已删除的文件。另外,我强烈建议*不要*在从包含已删除文件的硬盘驱动器启动时执行此操作,而是立即关闭系统并从 Live DVD / USB 执行此操作。 (2认同)