在Linux中使用extundelete命令恢复已删除的数据
Extundelete是从ext4和ext3文件系统恢复已删除文件的实用程序。
这是一个易于使用的工具,可免费恢复意外删除的珍贵文件。
它适用于ext4和ext3文件系统。
要安装extundelete,请从sourceforge页面下载。
下载源代码后,我们现在可以按照以下简单步骤进行编译。
安装依赖项
确保在系统上安装了e2fsprogs和e2fslibs库。
Extundelete取决于这些库,因此必须先安装这些库。
要在Fedora中安装ex2fslibs和e2fsprogs:
$sudo yum install ex2fslibs-devel $sudo yum install e2fsprogs
要在Ubuntu中安装ex2fslibs和e2fsprogs,请执行以下操作:
$sudo apt-get install ex2fslibs-devel $sudo apt-get install e2fsprogs
编译Extundelete
如果已经成功安装了这两个库,则下一步是编译源代码。
解压缩从sourceforge页面下载的文件。
$tar -xjf extundelete-0.2.4.tar.bz2
将目录更改为提取的文件夹,如下所示。
$cd ex tundelete-0.2.4
运行配置脚本,如果由于权限不足而无法运行,请通过以下方式使脚本可执行:
$chmod u+x configure $./configure $make
如果我们没有遇到任何错误,那么可执行文件将存储在extundelete-0.2.4文件夹中的src文件夹中。
现在该恢复那些意外删除的文件了。
无需在系统中安装Extundelete即可运行它。
如果发现有必要安装它,请运行命令,但是在本教程中,我们将从当前目录运行它。
$sudo make install
恢复数据
停止要从中恢复数据的磁盘上正在进行任何写操作的所有进程,然后卸下磁盘。
我们也可以将磁盘挂载为只读。
$umount/dev/sda6
要将磁盘卸载并重新装载为只读,请执行以下操作:
$mount -o remount,ro /dev/sda6
以只读方式安装或者卸载都可以。
在任何时候,我们都可以使用--help选项。
$src/extundelete --help
识别分区
要还原,我们需要标识磁盘名称,例如使用lsblk命令。
$lsblk
运行Extundelete
根据lsblk的输出,我们可以看到分区的名称。
现在,按照下面的示例,相应地替换磁盘的名称。
$src/extundelete /dev/sda6 --restore-file home/xuniaw/filename
注意:文件名是相对于分区的,而不是绝对路径。
这就是为什么它们不以“ /”开头的原因。
如果我们不知道文件的名称是什么,但是可以调出文件存储的目录,请运行以下命令。
这将列出该目录中的文件,并指示是否删除了该文件。
$src/extundelete /dev/sda6 --restore-file home/xuniaw/*
现在,我们可以获取文件名,并在先前的命令中使用它。
现在,在某些情况下,我们已经丢失了特定分区上的所有数据,并且对恢复所有数据感兴趣。
$src/extundelete /dev/sda6 --restore-all
使程序静音
还原所有文件时,我们可能不希望将所有数据都扔到屏幕上。
我们可以使用--log 0操作使程序静音。
$src/extundelete /dev/sda6 --restore-all --log 0
输出到日志文件
或者,如果我们要查看输出,则可以按以下方式登录到文件:
$src/extundelete /dev/sda6 -- restore-all --log logdata.txt