文档

如何在 Linux 上恢复已删除的文件

任何人都有可能犯这样的错误:删除重要文件后,发现没有备份。虽然垃圾箱可以提供一种回滚此类操作的方法,但其可行性取决于用户如何与操作系统交互。例如,简单的 CTRL + Delete 组合键可以绕过垃圾箱作为第一个数据恢复级别。无论底层系统是专有的还是免费解决方案,都有许多工具旨在帮助用户恢复丢失的文件。作为世界上最受欢迎的免费计算平台之一,当谈到数据恢复选项时,Linux 也不例外。其中许多是开源解决方案,可以从官方存储库下载和安装。其他一些是商业工具,可在任何基于 Linux 的操作系统上运行。我们将研究其中两种解决方案并评估每种解决方案的工作原理:TestDisk 和 R-Linux。

测试盘

TestDisk 是一款免费的开源命令行工具,用于在 Linux 上恢复已删除的文件。该软件由 Christophe Grenier 用 C 编程语言编写,并根据 GNU/GPLv2 许可证获得许可。它可在主要操作系统上运行 - Linux 发行版、Windows 和 macOS。可以通过以下按钮下载安装包:

TestDisk 下载

对于基于 Linux 的系统,也可以通过相应的默认包管理器进行安装。在 Debian 和 Ubuntu 上,以下命令在系统上安装 TestDisk:

$ sudo apt 更新

$ sudo apt 安装测试磁盘

如果需要安装额外的软件包(依赖项)或者删除必要的软件包,安装过程会要求确认。否则,TestDisk 将直接安装在系统上。

在 Ubuntu 和 Debian 上安装 TestDisk

要检查该工具的安装和其他信息,可以执行以下命令:

$ sudo dpkg -l 测试磁盘

在 Ubuntu 上验证 TestDisk

要在 Red Hat Enterprise Linux (RHEL) 和 CentOS 上安装 TestDisk,首先需要启用/安装 EPEL 存储库。它是一个附加软件包存储库,可用于访问常用软件的安装软件包。根据 CentOS 版本(7 或 8),EPEL 存储库设置略有不同,如两组命令所示(所有命令都必须以超级用户权限执行):

  • RHEL / CentOS 7

# yum 安装 epel-release

# yum 更新

# yum 安装测试盘

  • RHEL / CentOS 8

# yum 安装 https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

# yum 更新

# yum 安装测试盘

在 RHEL 和两个版本的 CentOS 上,可以通过运行以下命令来验证 TestDisk 安装:

$ rpm -qi 测试盘

在 CentOS 上验证 TestDisk

最后,以下命令可用于在其他两个传统 Linux 发行版上安装 TestDisk:

  • Fedora:

$ sudo dnf 安装测试磁盘

  • Arch Linux:

$ sudo pacman -S 测试盘

TestDisk 安装完成后,用户可以通过命令列出系统上的所有分区和存储设备

# 测试磁盘 /列表

要在 Linux 上恢复已删除的文件,只需调用 TestDisk 工具而不使用任何参数,如下所示

# 测试盘

TestDisk 检查分区

TestDisk 的调用将显示一个命令行菜单,其中包含三个与恢复已删除文件的过程的日志信息相关的选项。

  1. 创造: 它创建一个新的 testdisk.log 文件。
  2. 附加: 它将新的日志信息添加到现有的 testdisk.log 文件中。
  3. 无日志: 它不会生成任何日志信息。

假设选择了创建新日志文件的选项,接下来 TestDisk 将列出可以从中恢复已删除文件的磁盘和分区。通过从列表中选择一项并选择“继续”选项,系统将要求指出要使用的相应分区类型。用户按下 ENTER 后,TestDisk 将前进显示可在该分区上执行的操作列表。

在 Linux 上运行 TestDisk

TestDisk 可以对分区执行的操作列表

“分析”选项评估所选分区,并将其用于在 Linux 上恢复数据。如果此类分区不可引导,该工具将显示一条消息通知用户。TestDisk 提供两种类型的搜索文件:“快速搜索”和“深度搜索”。选择其中一种并再次按“继续”后,该工具将列出所有可扫描的分区。最后一步是触发搜索过程。在此步骤中,该工具会更新屏幕,显示每个可用于恢复文件的分区。选择一个分区后,将突出显示在该分区上找到的所有已删除文件,您可以按字母“C”将已删除的文件复制到特定目录。

已删除文件源目录

R-Linux

R-Linux 是另一个免费实用程序,适用于 Windows、macOS 和 Linux(32 位和 64 位)操作系统。它还有一个更完整的解决方案,即 R-Studio,它是付费的,支持使用 NTFS(新技术文件系统)分区。与 TestDisk 和其他命令行工具不同,R-Linux 带有友好的图形用户界面。可以通过以下按钮下载:

R-Linux 下载

安装并打开 R-Linux 后,第一个屏幕提示用户选择要从中恢复已删除文件的磁盘或分区。

R-Linux 选择磁盘或分区

下一步是通过按下相应的按钮来触发扫描过程。R-Linux 将要求用户选择要执行的扫描类型:简单、详细或无。最后一种扫描类型不提供搜索已删除文件过程的图形视图。在同一个选项窗口中,还可以选择运行扫描的特定区域。设置完成后,按下另一个“扫描”按钮即可启动该过程。接下来,R-Linux 将显示正在分析的磁盘的一种地图。通过此“地图”,可以跟踪扫描过程的进度。可以随时按下“停止”按钮来中断此步骤。

R-Linux 的扫描选项

R-Linux 的扫描过程

自扫描过程结束以来,访问已删除文件的两个主要选项是:

  • 单击分区并选择“恢复所有文件...”
  • 选择“打开驱动器文件”选项并确定要从中恢复已删除文件的文件夹。通过此选项,还可以选择该工具找到的特定文件。随后必须按下“恢复”或“恢复标记”按钮。

R-Linux 恢复文件

摘要 – 在 Linux 上恢复已删除的文件

有各种各样的工具可用于恢复 Linux 上已删除的文件。其中许多解决方案仅提供命令行界面,这要求 Linux 用户更加熟练。TestDisk 就是一个例子。虽然它是一种功能强大的解决方案,但它不会隐藏有关驱动程序和分区的低级细节。另一类工具的工作方式与 R-Linux 类似,它显示更友好的界面,并方便具有任何 Linux 知识水平的用户与其交互。

蒂亚戈·纳西门托的照片

蒂亚戈·纳西门托

Thiago Nascimento 是一位计算数学家,他一边担任软件工程师,一边在 Filelem 担任技术作家撰写文章。他喜欢了解技术的实际工作原理,并写下他所学到的东西。尽管他对基于 Linux 的解决方案充满热情,但他也是 Windows 世界的探索者。

相关文章

返回顶部按钮