LINUX

关注公众号 jb51net

关闭
操作系统 > LINUX >

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

雪竹聊运维

一、概述

这曾经发生在你身上吗?你意识到你错误地删除了一个文件---要么通过Del键,要么在命令行中使用rm。

在第一种情况下,您可以使用回站站(GNOME界面),然后将其恢复到原始位置。但是第二种情况呢?我相信你可能知道,Linux 命令行不会将删除的文件发送到任何地方,而是直接删除它们。

二、过程

1、 为“rm -i”创建别名

该-i选项与rm一起使用时在删除文件之前会出现提示。此提示让您有第二次机会考虑是否真的要删除文件 ,但此提示不会保护您免受自己的粗心大意删除文件,它只是给你提供了二次确认的机会。

要将rm替换为别名'rm -i',请执行以下操作:

alias rm='rm -i'

alias命令将确认rm现在是别名:

 

但是,这只会在当前 shell 中的当前用户会话期间持续。要使更改永久生效,您必须将其保存到~/.bashrc(某些发行版可能会使用~/.profile),

如下所示:

为了使~/.bashrc(or ~/.profile) 中的更改立即生效,请从当前 shell 获取文件:

 

2、 恢复工具 – Foremost

在日常的系统操作,请小心的你文件,但是,如果您意识到您不小心删除了系统中的文件并且惊慌失措,别担心,此工具会轻松帮你找回误删除的文件! 

2.1 安装软件包

CentOS/RHEL 7,是目前在生产环境见到的使用最广泛的版本,下面展示在CentOS/RHEL 7中的安装过程。

#rpm -Uvh https://rpmfind.net/linux/dag/redhat/el7/en/x86_64/dag/RPMS/foremost-1.5.7-1.el7.rf.x86_64.rpm

命令展示:

[root@192_168_209_128 images]# foremost  -h

foremost version 1.5.7 by Jesse Kornblum, Kris Kendall, and Nick Mikus.

$ foremost [-v|-V|-h|-T|-Q|-q|-a|-w-d] [-t <type>] [-s <blocks>] [-k <size>] 

        [-b <size>] [-c <file>] [-o <dir>] [-i <file] 

-V  - display copyright information and exit

-t  - specify file type.  (-t jpeg,pdf ...) 

-d  - turn on indirect block detection (for UNIX file-systems) 

-i  - specify input file (default is stdin) 

-a  - Write all headers, perform no error detection (corrupted files) 

-w  - Only write the audit file, do not write any detected files to the disk 

-o  - set output directory (defaults to output)

-c  - set configuration file to use (defaults to foremost.conf)

-q  - enables quick mode. Search are performed on 512 byte boundaries.

-Q  - enables quiet mode. Suppress output messages. 

-v  - verbose mode. Logs all messages to screen

选项释义:

2.2 示例展示

(1) 安装完成后,让我们进行一个简单的测试。

首先我们将xihu.jpg从/boot/images目录中删除:

[root@192_168_209_128 images]# cd image

[root@192_168_209_128 images]# pwd

/boot/images

[root@192_168_209_128 images]# ls

xihu.jpg

[root@192_168_209_128 images]# rm xihu.jpg

(2) 执行恢复。

要恢复它,首先按如下方式使用(您需要首先识别底层分区 -在这种情况下/dev/sda1就是/boot所在的分区):

remost -t jpg -i /dev/sda1 -o /home/rescure/

(3) 查看恢复情况

查看一下审计文件。

 

从输出内容来看,文件被成功恢复。

注意事项:

三、小结

在本文中,我们解释了如何避免意外删除文件以及在发生此类意外事件时如何尝试恢复文件。但是请注意,根据分区的大小,最终可能需要运行很长时间。

到此这篇关于在 Linux 中如何恢复已删除的文件的文章就介绍到这了,更多相关 Linux 恢复已删除文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!