一,下载ext3grep-0.10.1.tar.gz

点此下载

二,安装

#tar zxvf ext3grep-0.10.1.tar.gz
#cd ext3grep-0.10.1
#./configure
#make
#make install

如果缺乏e2fsprogs-devel和e2fsprogs-devel,yum安装

#yum install e2fsprogs-libs
#yum install e2fsprogs-devel

三.模拟删除
1.制造一个分区

#mkdir /home/test
#cd /home/test
#dd if=/dev/zero of=file count=102400
#mkfs.ext3 file

2.挂载

#mount -o loop /home/test/file /mnt/
#df -lh

/dev/sda1             485M   32M  429M   7% /boot
/home/test/file        49M  4.9M   42M  11% /mnt

查看发现已挂载

3.写入数据到mnt

#mkdir /mnt/del
#echo 1 > /mnt/del/1
#echo 2 > /mnt/del/2
#echo 3 > /mnt/del/3

4.删除数据

#rm -rf /mnt/del

四.开始恢复
1.卸载分区

#cd / *退入根目录,否则在mnt目录下会提示,busy,无法卸载
#umount /home/test/file

2.确认卸载

#df -h

3.查看根的inode

#ls -id /

输出
2 /
发现是2

4.扫描

#ext3grep /home/test/file --ls --inode 2

输出
Indx Next |  Inode   | Deletion time                        Mode        File name
==========+==========+----------------data-from-inode------+-----------+=========
   0    1 d       2                                         drwxr-xr-x  .
   1    2 d       2                                         drwxr-xr-x  ..
   2  end d      11                                         drwx------  lost+found
   3  end d    7329  D 1461612320 Mon Apr 25 15:25:20 2016  drwxr-xr-x  del

5.del目录的inode为7329,D标示为可恢复

6.扫描del下目录

#ext3grep /home/test/file --ls --inode 7329

输出
==========+==========+----------------data-from-inode------+-----------+=========
   0    1 d    7329  D 1461612320 Mon Apr 25 15:25:20 2016  drwxr-xr-x  .
   1    2 d       2                                         drwxr-xr-x  ..
   2    3 r    7330  D 1461612316 Mon Apr 25 15:25:16 2016  rrw-r--r--  1
   3    4 r    7331  D 1461612316 Mon Apr 25 15:25:16 2016  rrw-r--r--  2
   4  end r    7332  D 1461612316 Mon Apr 25 15:25:16 2016  rrw-r--r--  3

7.恢复单个文件1

#ext3grep /home/test/file --restore-file del/1

恢复后的文件在当前的RESTORED_FILES目录下

8.恢复全部文件

ext3grep /home/test/file --restore-all

ext3grep 模拟恢复删除文件的更多相关文章

  1. Qt之QDomDocument操作xml文件-模拟ini文件存储

    一.背景 不得不说Qt是一个很强大的类库,不管是做项目还是做产品,Qt自身封装的东西就已经非常全面了,我们今天的这篇文章就是模拟了Qt读写ini文件的一个操作,当然是由于一些外力原因,我们决定自己来完 ...

  2. WPF模拟Office2010文件菜单的TabControl模板

    原文:WPF模拟Office2010文件菜单的TabControl模板 这是Office2010中的文件菜单点开后的效果.本文我将以强大的WPF(www.itstrike.cn)来实现类似的效果.希望 ...

  3. AJAX-----11iframe模拟ajax文件上传效果原理3

    如果直接给用户提示上传成功,那么如果用户上传的文件比较大点,那么等上半天都没反映,那么用户很有可能会刷新或者关了从来等... 那么会给我们服务器带来一定的影响,所以我们可以对这方面的用户体验度进行提升 ...

  4. Javascript 代理模式模拟一个文件同步功能

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. AJAX-----09iframe模拟ajax文件上传效果原理1

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. Linux恢复删除文件

    一.介绍extundelete 1.extundelete的文件恢复工具,该工具最给力的一点就是支持ext3/ext4双格式分区恢复. 2. 在实际线上恢复过程中,切勿将extundelete安装到你 ...

  7. C# 模拟多文件上传

    原地址:http://www.cnblogs.com/greenerycn/archive/2010/05/15/csharp_http_post.html 1.客户端代码 用winform写的 pr ...

  8. Centos 模拟生成文件的脚本

    #!/bin/sh count= #控制每秒写入不同大小的文件 while true do ;i<=$count;i++)) do /bin/-`.jpg done ;i<=$count; ...

  9. iframe 模拟ajax文件上传and formdata ajax 文件上传

    对于文件上传 有好多种方式,一直想总结 文件上传的方法 今天就来写下 iframe  的文件上传的代码 本人语言表达能里有限,不多说了 直接上代码. 首先看 总体页面. 总共就三个文件. 实际上也就是 ...

随机推荐

  1. 转:Delphi 回调函数及例子

    http://anony3721.blog.163.com/blog/static/5119742010866050589/ { http://anony3721.blog.163.com/blog/ ...

  2. jQuery Cycle Plugin的使用

    jQuery幻灯片效果或者Slideshow效果当中如果不考虑touch效果的话,jQuery Cycle插件实在是太强大了,各种高大上的动画效果,如果想加上touch效果可以结合本blog介绍的wi ...

  3. BestCoder Round #73 (div.2)

    1001 Rikka with Chess ans = n / 2 + m / 2 1002 Rikka with Graph 题意:n + 1条边,问减去至少一条使剩下的图连通的方案数. 分析:原来 ...

  4. Java jar命令 常见用法

    一.jar命令作用: 进行打包 -- 把多个文件打包成一个压缩包 -- 这个压缩包和Winzip的压缩格式是一样的. 区别在于jar压缩的文件默认多一个META-INF的文件夹,该文件夹下包含一个Ma ...

  5. C# 开发积累(1)

        EntityFramework批量增加时报"...请在调用 AcceptChanges 之前,确保键值是唯一的" http://www.xinglongjian.com/i ...

  6. SqlServer 事务回滚(1)

    SQL事务   一.事务概念     事务是一种机制.是一种操作序列,它包含了一组数据库操作命令,这组命令要么全部执行,要么全部不执行.因此事务是一个不可分割的工作逻辑单元.在数据库系统上执行并发操作 ...

  7. BZOJ3515 : EvenPaths

    首先拓扑排序,并将障碍点按拓扑序平均分成两半. 那么一条$0$到$1$的路径一定是形如: $0$->前一半点->后一半点->第一个后一半障碍点->后一半点->$1$. 对 ...

  8. 创建第一个Hiberntae工程

    一.前言 很久之前已经对Hibernate有所了解,在项目中进行过简单的应用,基本了解hibernate的简单应用,没有深入的了解,来Shine公司快三个月了,公司的ORM框架就是用Hiberante ...

  9. hdu1251 统计难题 字典树

    Problem Description Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己 ...

  10. 【Java】RuleSource约束常用方法整理

    1-常用约束规则RuleSource的设置方法   例如: addRules(new Rules(ProgramFeeItem.class){ protected void initRules() { ...