linux使用rm-rf删除之文件恢复

 --背景:我相信有很多跟我一样手贱兮兮的喜欢用rm-rf来删除文件,然删时一时爽,恢复起来悔断肠,懂得恢复文件也需成为tester们一项必备技能。

一、准备工作:

1、磁盘规划时一定要做功能分区,否则,误删了想恢复也很困难(我就是那个倒霉蛋蛋)

2、需立即将磁盘挂载为只读,否则其它daemons都来读写,game over;

3、uname -a 查看自己撒系统

4、parted 再加p 查看你的系统是ext3还是ext4,extundelete只适用于ext4

二、环境配置:

1、下载extundelete,地址为http://extundelete.sourceforge.net/

2、安装extundelete ;

  • tar -jxf extundelete-0.2.4.tar.bz2   #解压
  • linux使用rm-rf删除之文件恢复

2、extundelete运行依赖e2fsprogs,作者的环境为ubuntu,故安装的是e2fslibs-dev,再贴上官方文档以or为分隔按照自己的系统来安装

linux使用rm-rf删除之文件恢复

  • 先安装e2fsprogs(自行找),一般下载过来的是rmp文件,作者的vim /etc/apt/sources.list中都为deb,故下载alien先把rpm转为deb文件
  1. sudo apt-get install alien ;
  2. sudo alien e2fsprogs-1.44.6-alt1.src.rpm  ;
  3. sudo dpkg -i e2fsprogs_1.44.6-1_amd64.deb ;#安装
  • cd extundelete-0.2.4
  • ./configure ;make;make install

幺蛾子:error: Can't find ext2fs library

三、解决问题:

  • sudo apt-get install e2fslibs-dev e2fslibs-dev
  • ./configure ;make;make install

四、环境差不多了,找回文件

  • ls -id /usr/local/src  #上面安装好后会给你一个src路径,自己注意一下,extundelete命令需要在这个目录下运行,贴原文

linux使用rm-rf删除之文件恢复

  • extundelete /dev/sda4 --restore-all  #sda4为分区后名,如没分区,fdisk 查看一下,自行替换(作者又贱兮兮的分了区,分了区了还不挂载,导致执行后直接被覆盖,忙活了半天。。内心是崩溃的)

5、总结:

懂得查看官方文档可以帮我们少走很多弯路,愿我们都直线行驶