如何在Linux/Ubuntu中使用PhotoRec恢复已删除的文件

时间:2020-02-23 14:40:14  来源:igfitidea点击:

不小心删除了文件或者照片?在本教程中,我们将学习如何使用PhotoRec在Linux中恢复已删除的文件。
在上一教程中,我们讨论了使用名为TestDisk的Linux实用工具恢复删除文件的步骤,而PhotoRec实用工具由同一家创建。
让我们了解如何使用PhotoRec恢复已删除的文件。

什么是PhotoRec?

TestDisk由CGSecurity创建,用于恢复已删除的分区。
另一方面,PhotoRec的创建是为了恢复从SD卡和其他可移动媒体删除的媒体文件。
这就是为什么名称" PhotoRec"("照片恢复"的缩写)的原因。
当然,这并不是说PhotoRec不能用于其他文件类型。

如何使用PhotoRec在Linux中恢复已删除的文件?

在开始之前,我们需要在Linux系统上安装PhotoRec。
它与testdisk实用程序一起包装,而不是单独包装。

1.在Linux上安装PhotoRec

要安装PhotoRec,请运行以下命令:

sudo apt -y install testdisk

设置完成后,您可以使用以下命令下载并运行Photorec实用程序:

sudo photorec

2.运行PhotoRec并开始扫描已删除的文件

在此演示中,我创建了一个随机图像文件并将其删除。
让我们继续恢复该文件。

Photorec删除文件

让我们在终端中启动PhotoRec。
为了简化操作,在运行命令之前,请导航至要运行恢复的目录。

sudo photorec

Photorec默认

启动PhotoRec后,选择要在其上执行还原操作的硬盘驱动器,然后按Enter键。

下一个屏幕将要求您选择要在其上运行恢复过程的分区。

光记录分区选择

在继续之前,请确保从文件选项菜单中选择文件类型,可以在分区选择屏幕上访问该文件类型。

众所周知,我们只是在寻找JPG文件,我选择了该扩展名。
其他任何事情都是不必要的,只会消耗更多时间。
选择您要查找的文件类型,然后继续。

Photorec文件类型选项

接下来是选择分区类型,在本例中为ext4。

光记录分区类型

现在,选择是否要让实用程序仅查看空闲扇区或者整个驱动器。

照片记录分区搜索

您可能已经注意到,当我运行命令时,我在~/Desktop目录中。

除非您导航到下一个屏幕上的特定文件夹,否则默认情况下将在此处开始查看命令。

Photorec目录选择

完成要开始查找的文件夹后,按字母C,程序将开始搜索文件。

3.恢复恢复的文件

大!因此,我们已经准备好让PhotoRec为我们还原已删除的文件。
可能需要一些时间,具体取决于您选择了多少种文件类型。

Photorec文件恢复完成

名为recup_dir的文件夹将开始还原所有已恢复的文件。
即使恢复正在进行中,也可以访问文件。

Photorec恢复的文件

太好了,现在我们有了以前删除的所有文件的列表。
由于PhotoRec不会还原文件名,因此您可以在此处查找所需的文件。

为什么数据恢复有效?

注意到在硬盘上保存文件需要花费时间,但是删除几乎是瞬时的吗?首先让我们了解一下。

当您将数据存储在硬盘驱动器上时,数据将存储在块中。
每个块包含一块数据。
第一块通常包含有关文件的元数据。
每个数据块都以硬盘速度一次写入一个。

但是,当我们删除文件时,仅删除包含元数据的第一个块。
操作系统不再能够检测到该文件,因为该文件的元数据丢失了,因此认为这些块可以自由写入新数据。

这就是恢复工具的用武之地。
由于仅丢失元数据,因此工具的工作是使元数据可供操作系统读取。

他们逐块,逐块读取硬盘驱动器扇区,并找到相关的块。
找到所有相关的块后,恢复实用程序将重新制作元数据。

这样便可以恢复已删除的文件。

PhotoRec如何工作

像其他文件恢复实用程序一样,PhotoRec会扫描硬盘驱动器上的数据扇区以查找数据大小。
一旦找到数据大小,并且硬盘驱动器和数据完整(不进行碎片整理或者覆盖),PhotoRec就会通过查找相邻的数据块并为其创建元数据来开始数据恢复过程。

由于该实用工具无法搜索特定文件,因此它将返回找到的所有文件并将其保存在文件夹中。
然后,您可以对文件进行排序并还原所需的文件。

在该过程结束时,您仍可以使用硬盘上仍然存在的所有文件进行还原。