ext3文件系统反删除利器-ext3grep

admin9个月前笔记81
ext3grep的恢复原理

利用ext3grep恢复文件时并不依赖特定文本格式。首先ext3grep通过文件系统的root inode(根目录的inode一般为2)来获取当前文件系统下所有文件的信息,包括存在的和已经删除的文件,这些信息包括文件名和inode。然后利用inode信息结合日志去查询该inode所在的block位置,包括直接块、间接块等信息。最后利用dd命令将这些信息备份出来,从而恢复数据文件。

ext3grep的安装

ext3grep官方网站:http://code.google.com/p/ext3grep/

网盘下载:http://pan.baidu.com/s/1i47ZPsT

所需的系统相关包如下:

[root@localhost ~]#rpm -qa | grep e2fsprogs

e2fsprogs-libs-1.39-8.el5

e2fsprogs-1.39-8.el5

e2fsprogs-devel-1.39-8.el5

以上三个都必须安装,不然后面的安装会出现问题。

下面进入编译安装阶段,过程如下:

[root@localhost /opt]# tar zxvf ext3grep-0.10.2.tar.gz
[root@localhost ext3grep-0.10.2]# ./configure
[root@localhost ext3grep-0.10.2]# make
[root@localhost ext3grep-0.10.2]# make install
[root@localhost ext3grep-0.10.2]# ext3grep -v
Running ext3grep version 0.10.2

默认的ext3grep命令放在/usr/local/bin目录下,请通过“ext3grep --help”获取详细使用帮助。

实战ext3grep恢复文件
模拟数据误删环境

下面通过一个模拟环境,详细介绍使用ext3grep恢复数据文件的过程:

[root@localhost ~]# mkdir /disk
[root@localhost ~]# mkdir /mydata
[root@localhost ~]# cd /mydata
[root@localhost mydata]# dd if=/dev/zero  of=/mydata/disk1 count=102400
[root@localhost mydata]#mkfs.ext3 /mydata/disk1

image.png

[root@localhost mydata]#mount -o loop /mydata/disk1  /disk
[root@localhost mydata]#cd /disk
[root@localhost disk]# cp /etc/profile /disk
[root@localhost disk]# cp /boot/initramfs-2.6.32-220.el6.i686.img /disk
[root@localhost disk]#echo"I am archy" > ext3grep.txt
[root@localhost disk]#mkdir /disk/ext3grep
[root@localhost disk]#cp /etc/hosts /disk/ext3grep
[root@localhost disk]#ls -al

image.png

[root@localhost disk]#md5sum profile
[root@localhost disk]#md5sum initramfs-2.6.32-220.el6.i686.img
[root@localhost disk]#md5sum ext3grep.txt
[root@localhost disk]#rm -rf /disk/*
[root@localhost /opt]# umount /disk
查询数据恢复信息

执行如下命令,查询需要恢复的数据信息:

[root@localhost /opt]# ext3grep /mydata/disk1  --ls --inode 2

image.png

这条命令主要用于扫描当前文件系统下所有的信息,包括存在的和已删除的文件,其中含有D标识的就是文件已被删除。通过以下命令可以获取文件要恢复的路径信息:

[root@localhost /opt]# ext3grep /mydata/disk1  --dump-names

image.png

恢复删除数据

单个文件恢复命令如下:

[root@localhost /opt]# ext3grep /mydata/disk1  --restore-file  ext3grep.txt

image.png

恢复的文件存放在/opt/RESTORED_FILES目录下。

恢复所有已删除数据的命令如下:

[root@localhost /opt]# ext3grep /mydata/disk1  --reatore-all


相关文章

利用英特尔 Gaudi 2 和至强 CPU 构建经济高效的企业级 RAG 应用

利用英特尔 Gaudi 2 和至强 CPU 构建经济高效的企业级 RAG 应用

检索增强生成 (Retrieval Augmented Generation,RAG) 可将存储在外部数据库中的新鲜领域知识纳入大语言模型以增强其文本生成能力。其提供了一种将公司数据与训练期间语言模型...

Linux的查看系统资源命令

Linux的查看系统资源命令

1、Top命令这个命令可以实时查看进程的状态,看可以看到总体的系统运行状态cpu、内存等,如图(1)第一行中的Tasks、total、running、sleeping、stoped、zombie相当于...

matlab如何实现LDLT分解(改进的平方根法)

matlab如何实现LDLT分解(改进的平方根法)

前言提示:本篇博客仅提供函数代码,不进行数学推导!需要了解数学推导的uu请移步其他博客!笔者这学期选修了数值计算这门课程。一次实验报告中需要自行编写LDLT分解的函数,并在脚本文件中调用此函数,返回求...

网站HTTPS 实践: HTTPS协议和原理

网站HTTPS 实践: HTTPS协议和原理

1、前言百度已经于近日上线了全站 HTTPS 的安全搜索,默认会将 HTTP 请求跳转成 HTTPS。本文重点介绍 HTTPS 协议, 并简单介绍部署全站 HTTPS 的意义。2、HTTPS 协议概述...

ChatGPT API使用介绍

ChatGPT API使用介绍

1.概述随着人工智能技术的不断发展,越来越多的AI产品被应用到各个领域,其中最具代表性的莫过于人工智能语言模型。语言模型是一种可以通过学习大量语言数据来预测文本或语音的技术,其应用范围十分广泛,如智能...

使用 lftp 来加速 ftp/https 下载速度

那么 lftp 的独特之处是什么?1、lftp 中的每个操作都是可靠的,即任何非致命错误都被忽略,并且重复进行操作。所以如果下载中断,它会自动重新启动。即使 FTP 服务器不支持 REST 命令,lf...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。