1、简介
extundelete的文件恢复工具,支持ext3/ext4双格式分区恢复。
1.extundelete的文件恢复工具,该工具最给力的一点就是支持ext3/ext4双格式分区恢复。
2. 在实际线上恢复过程中,切勿将extundelete安装到你误删的文件所在硬盘,这样会有一定几率将需要恢复的数据彻底覆盖。
3. extundelete还是有很大的不完整性,基于整个磁盘的恢复功能较为强大,基于目录和文件的恢复还不够强大。
4. extundelete执行完毕后在当前目录生产一个RECOVERED_FILES目录,里面即是恢复出来的文件,还包括文件夹。
5.任何的文件恢复工具,在使用前,均要将要恢复的分区卸载或挂载为只读,防止数据被覆盖使用。
umount /dev/partition
mount -o remount,ro /dev/partition
6.保持良好的习惯,绝对比恢复数据要更简单。
二、安装
2、安装
extundelete需要依赖e2fsprogs和e2fslibs
yum install -y e2fsprogs* e2fslibs*
wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2
tar -axf extundelete-0.2.4.tar.bz2 -C /usr/local/src
cd /usr/local/src/extundelete-0.2.4
./configure --prefix=/usr/local/extundelete
make
make install
ln -s /usr/local/extundelete/bin/* /usr/local/bin/
3、使用及命令
1、umount或者read only 分区
umount /dev/partition
mount -o remount,ro /dev/partition
2、切换到存储恢复文件的目录
cd $dir
4、使用命令
此选项是默认的.
--superblock 打印指定分区的超级块信息。如不加任何的参数,
extundelete --superblock /dev/sda3 <---> extundelete /dev/sda1
--journal 显示块的日志信息,同--superblock。
extundelete --journal /dev/sda1
--after dtime 只恢复指定时间【dtime】(时间戳)之后,被删除的数据
假如删除的时间大概是2011-7-26 14:30
date -d "Jul 26 14:30" +%s
得出秒数 1234567890
恢复此时间后删除的所有文件
–before dtime 只恢复指定时间【dtime】(时间戳)之前,被删除的数据
--inode ino 显示某分区inode为x的信息,一般是查看该分区下所有的文件.
–restore-inode ino[,ino,…] 恢复一个或多个指定inode号的文件,该恢复的文件,
保存在当前目录下的RECOVERED_FILES里,文件名为【file.$inode】
–restore-file ‘filename’ 恢复指定的文件(被删除的),文件位于当前目录下的RECOVERED_FILES/$filename,文件名还是原来的
–restore-directory ‘dir-name’ 恢复指定的目录,文件位于当前目录下的
RECOVERED_FILES/$dir-name,文件名还是原来的
–restore-all 恢复某分区里所有被删除的数据,文件名还是原来的
案例
因为我的数据路径比较深,所以我们需要一步步查找,可以先从根分区 inode 查找
extundelete /dev/sdb1 --inode 2
我们会看到 weapps 目录的inode,
extundelete /dev/sda5 --inode 24641537
看到项目的 inode,
extundelete /dev/sda5 --inode 24903688
找到了最终删除数据的目录 upload
extundelete /dev/sda5 --inode 24904454
四、数据恢复
那我们就恢复指定目录,以当前分区为根分区进行路径设定,项目名进行掩盖
extundelete /dev/sda5 --restore-directory /webapps/xxxx/upload
因为磁盘数据一直在读写,所以有些文件之前的 inode 已经被重新分配了,导致部分数据无法恢复,数据最后会告诉我们有多少文件没有回复,但是大部分数据我们已经恢复了,这就是很重要的事情了。
那我们查看一下回复的数据吧,软件会在当前目录生成一个目录 RECOVERED_FILES 里面就是我们恢复的数据。
恢复全部数据可以使用命令
extundelete /dev/sda5 --restore-all
参考链接 :
LInux上使用extundelete进行数据恢复 : https://blog.51cto.com/bosszhang/2069542
centOS6.4 extundelete工具恢复rm -rf 删除的目录 :https://www.cnblogs.com/patf/p/3368765.html
centos Linux 安全工具之extundelete误删除恢复 : https://www.cnblogs.com/yangxiaofei/p/5638428.html
linux下如何恢复ntfs分区上被rm命令删除的文件 : https://www.sogou.com/link?url=CrexC2hj5_6kY9HJ9JpxI7OSDU6EM_KFaJrgRIXUqR4xxGy9PNVhECbjiJf3vfm3YVGjSzASZ4lfZwDIltHcHw…
http://my.oschina.net/fufangchun/blog/176550#OSC_h2_5
(centos)Linux extundelete命令 : https://www.cnblogs.com/274914765qq/p/4912692.html
Linux下数据误删除不再是恐怖的事情,ext3grep帮你恢复 : https://www.cnblogs.com/jikexianfeng/p/7349275.html