导读 Linux作为企业级服务器,数据的安全性至关重要,任何数据德尔丢失和误删都是不可容忍的!最近我接触到一款软件-ext3grep,它可以恢复误删的数据,下面简单讲解一下这个软件。
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

[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

[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

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

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

恢复删除数据

单个文件恢复命令如下:

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

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

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

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

ext3文件系统反删除利器-ext3grep的更多相关文章

  1. 高性能Linux服务器 第6章 ext3文件系统反删除利器ext3grep extundelete工具恢复rm -rf 误删除的文件

    高性能Linux服务器 第6章  ext3文件系统反删除利器ext3grep  extundelete工具恢复rm -rf 误删除的文件 只能用于ext3文件系统!!!!!!!高俊峰(高性能Linux ...

  2. ext3文件系统反删除利器ext3grep应用实战

    推荐:10年技术力作:<高性能Linuxserver构建实战Ⅱ>全网发行,附试读章节和全书实例源代码下载! 一."rm –rf"带来的困惑 国外一份非常著名的Linux ...

  3. ext3文件系统,reiserfs,xfs,jsf那种性能好点

    ext2 是一个旧的 Linux 档桉系统,没有日志功能. 启用的时间通常需要很久.目前有许多 日志型态 的档桉系统可以以更快的速度及更好的效率完成系统启用和检查. ext3 为 ext2 的日志版, ...

  4. 恢复Ext3下被删除的文件(转)

    恢复Ext3下被删除的文件(转) 前言 下面是这个教程将教你如何在Ext3的文件系统中恢复被rm掉的文件. 删除文件 假设我们有一个文件名叫 ‘test.txt’ $ls -il test.txt 1 ...

  5. EXT2/EXT3文件系统(二)

         整理自<鸟哥的Linux私房菜>,整理者:华科小涛http://www.cnblogs.com/hust-ghtao/ 接EXT2/EXT3文件系统(一):   2.3 Supe ...

  6. EXT3文件系统误删除导致文件系统中的邮件丢失恢复方法

    一.故障描述 由8块盘组成的RAID5, 上层是EXT3文件系统,由于误删除导致文件系统中的邮件丢失 二.镜像磁盘为防止数据恢复过程中由于误操作对原始磁盘造成二次破坏, 使用winhex软件为每块磁盘 ...

  7. Linux学习之CentOS(十八)-----恢复Ext3下被删除的文件与 使用grep恢复被删文件内容(转)

    前言 下面是这个教程将教你如何在Ext3的文件系统中恢复被rm掉的文件. 删除文件 假设我们有一个文件名叫 'test.txt' $ls -il test.txt 15 -rw-rw-r– 2 roo ...

  8. 恢复Ext3下被删除的文件

    下面是这个教程将教你如何在Ext3的文件系统中恢复被rm掉的文件. 假设我们有一个文件名叫 ‘test.txt’  $ls -il test.txt 15 -rw-rw-r– 2 root root ...

  9. 深入理解Linux内核-Ext2和Ext3文件系统

    Ext2的一般特征: 1.创建Ext2文件系统时,系统管理员可以根据预期的文件平均长度来选择最佳块大小(从1024B-4096B).来减少文件碎片2.创建Ext2文件系统时,系统管理员可以根据在给定大 ...

随机推荐

  1. Qt程序启动画面播放(gif与swf两种动画格式)

    学习Qt有一段时间了,发现一个小问题,网上关于Qt的资料或者总结性的学习及应用文章有点少. 比如,Qt完整的API,程序运行之前的启动画面如何按理想效果播放等,每次想在项目中添加一些应用的时候,总是找 ...

  2. WCF入门(8)

    前言 昨天买的usb无线路由到了,笔记本又可以愉快的上网了. 下午去办市民卡,被告知说“本人医保现在停保,要等继续缴才行”,白公交坐了那么远的路. 需要视频的进群,378190436. 第八集 Dif ...

  3. Bootstrap3.0学习第十九轮(JavaScript插件——标签页)

    详情请看 http://aehyok.com/Blog/Detail/46.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链接:ht ...

  4. 完美实现开机启动虚拟WIFI,顺便实现目前的WP8系统使用VPN(7.1修)

    众所周知,windows7系统的机器若带有无线网卡(台式机可以买一个USB无线网卡,京东目前39元,TP-Link的),可以虚拟出wifi,供手机等移动设备使用. 虚拟的WIFI的命了和软件在网上都找 ...

  5. 拦路虎:jQuery

    1.   color设置无效的问题! $("#subscribe").hover(function(){ var $this = $("#subscribe .subsc ...

  6. Fluent Ribbon项目出现“命名空间“clr-namespace:Fluent;assembly=Fluent”中不存在“RibbonWindow”名称”的解决方法

    之前在学习@aganqin的Fluent Ribbon项目(http://www.cnblogs.com/aganqin/p/3269384.html).但是一直都有引用了Fluent.dll后仍旧出 ...

  7. 使用Owin中间件搭建OAuth2.0认证授权服务器

    前言 这里主要总结下本人最近半个月关于搭建OAuth2.0服务器工作的经验.至于为何需要OAuth2.0.为何是Owin.什么是Owin等问题,不再赘述.我假定读者是使用Asp.Net,并需要搭建OA ...

  8. HTML5动画实例

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  9. scanf的一些技巧

    一.scanf和gets 1.不同点: char string[50]; scanf("%s",string); //当遇到回车,空格和tab键会自动在字符串后面添加'\0',但是 ...

  10. poj 3070 矩阵快速幂模板

    题意:求fibonacci数列第n项 #include "iostream" #include "vector" #include "cstring& ...