误删文件的恢复-extundelete
来源:互联网 发布:女娲 知乎 编辑:程序博客网 时间:2024/06/03 18:55
首先来查询一下extundelete有么有安装:
[root@super ~]# extundelete --help-bash: extundelete: command not found
没安装的同志紧跟大队伍往下走
extundelete安装
下载extundelete
[root@super ~]# wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2
解压进入
[root@super ~]# tar -jxf extundelete-0.2.4.tar.bz2[root@super ~]# cd extundelete-0.2.4[root@super extundelete-0.2.4]# ./configure
⑴ ./configure报错1:
configure: error: in
/usr/local/src/extundelete-0.2.4': configure:
config.log’ for
error: C++ compiler cannot create executables See
more details
分析:编译需要gcc-c++这个库
解决报错1:
[root@super ~]# yum -y install gcc-c++
⑵ 报错2:
configure: error: Can’t find ext2fs library
分析:extundelete依赖于ext2fs库
解决报错:
先查找一下相关安装包:
[root@super ~]# yum list | grep e2fs
e2fsprogs.x86_64 1.41.12-22.el6 @os
e2fsprogs-devel.x86_64 1.41.12-22.el6 @os
e2fsprogs-libs.x86_64 1.41.12-22.el6 @os
e2fsprogs-devel.i686 1.41.12-22.el6 os
e2fsprogs-libs.i686 1.41.12-22.el6 os
由结果可知需要安装e2fsprogs:
[root@super ~]# yum -y install e2fsprogs
装完还是失败就在光盘目录排除依赖关系安装一下:
[root@super ~]# rpm -ivh e2fsprogs-devel-1.41.12-18.el6.x86_64.rpm --nodeps
排(an)雷(zhuang)完毕,开始源码安装三部曲:
执行./configure编译完成
[root@super extundelete-0.2.4]# make -j 4[root@super extundelete-0.2.4]# make install
搞个小分区(/dev/sda5)来做实验:
[root@super ~]# fdisk /dev/sda[root@super ~]# mkfs.ext4 /dev/sda5 #分区格式化[root@super ~]# mkdir -p /root/mount/sda5 #创建挂载点[root@super ~]# mount /dev/sda5 /root/mount/sda5 #挂载分区
@进入挂载点目录并创建一些文件、目录
[root@super ~]# cd /root/mount/sda5[root@super ~]# mkdir -p a/b/c/d[root@super ~]# echo "hello" > a/b/c/d/a.txt[root@super ~]# mkdir -p z/f[root@super ~]# touch !$/f.txt[root@super ~]# cp -a /etc/fstab /etc/passwd /boot/grub .
[root@super ~]# rm -rf * #手滑误删
@为了保存犯罪现场,避免不必要的更改,先卸载分区,或者挂载为只读文件系统:
[root@super ~]# umount /dev/sda5[root@super ~]# mount -o remount,ro /dev/sdb5
操起extundelete就是干
大sir登场,extundelete开始恢复,先查看分区文件信息(从节点号为2开始查看):
- 查看原文件系统信息
[root@super ~]# extundelete --inode 2 /dev/sda5
由图可真相出已经被删除的文件及其inode号 ↑o↑
[root@super ~]# mkdir test && cd test #创建一个目录存放恢复的文件
- 以节点号恢复(–restore-inode)
[root@super test]# extundelete --restore-inode 13 /dev/sda5[root@super test]# lsRECOVERED_FILES[root@super test]# cd RECOVERED_FILES[root@super RECOVERED_FILES]# lsfile.13[root@super RECOVERED_FILES]# diff file.13 /etc/fstab#无输出,即无差别[root@super RECOVERED_FILES]# mv file.13 fstab #恢复原名[root@super RECOVERED_FILES]# mount /dev/sda5 /root/mount/sda5 #重新挂载[root@super RECOVERED_FILES]# mv fstab /root/mount/sda5 #将文件恢复到原目录下
- 以文件名恢复(–restore-file)
[root@super test]# extundelete --restore-file passwd /dev/sda5[root@super test]# cd RECOVERED_FILES[root@super RECOVERED_FILES]# lspasswd
- 恢复目录(–restore-directory):
[root@super test]# extundelete --restore-directory grub /dev/sda5[root@super test]# cd RECOVERED_FILES[root@super RECOVERED_FILES]# ls grub
- 恢复全部
[root@super test]# extundelete --restore-all /dev/sda5[root@super test]# cd RECOVERED_FILES[root@super RECOVERED_FILES]# lsfstab passwd grub a z
- 注意
1、extundelete在rhel6中无法恢复空文件和空目录,如上例中恢复的z文件夹中只有f文件夹,而没有f.txt文件(空文件),具体可用tree命令查看。
2、extundelete默认恢复到当前文件夹下的RECOVERED_FILES目录中(不存在则自动创建)。
3、extundelete默认只可恢复ext3/ext4文件系统的文件。
小小总结一下
用法:extundelete [options] [–] device-file
extundelete常用的选项汇总(以下开头全是两个-):
–inode #:从节点号#开始查看文件系统中的文件
–superblock:打印超级块信息
–restore-inode:以inode号恢复文件
–restore-file:以文件名恢复文件
–restore-directory:以目录名恢复
–restore-all:恢复被删除的所有文件/目录
- 误删文件的恢复-extundelete
- Linux用extundelete恢复误删文件
- extundelete工具恢复误删文件
- Linux下使用extundelete恢复误删文件
- extundelete恢复备删除的文件
- 使用extundelete恢复删除的文件
- linux恢复误删除文件-extundelete
- 使用extundelete恢复被删文件
- Linux 文件恢复 - extundelete
- linux下使用extundelete恢复误删
- 运维日记002-extundelete恢复Linux系统误删除的文件
- extundelete恢复Ubuntu系统下git clean -fd(rm)误删除的文件
- ubuntu下使用extundelete恢复使用rm删除的文件
- 用extundelete恢复Ubuntu Linux下删除的文件
- linux下extundelete恢复ext4删除的文件
- linux恢复 rm -rf 删除的文件:extundelete
- 误删除恢复 (extundelete)
- CentOS 恢复 rm -rf * 误删数据--extundelete
- INVALID_USER_SCODE BUG 解决方案
- Android手机的休眠状态
- android中setBackgroundColor()中不能设置背景颜色的问题
- 编写一个程序,读取键盘输入,直到遇到@符号为止,并回显输入(数字除外),同时将大写字符转换为小写,将小写字符转换为大写(别忘了cctype函数系列)
- AngularJS路由之ui-router(三)
- 误删文件的恢复-extundelete
- Ship wakes: Kelvin or Mach angle?
- 最大公约数与最小公倍数
- Zurmo(九)----货币机制
- Android广播之发送广播的源码分析
- Ship Kelvin Wake
- 2016-12-18日股市复盘
- 《React-Native系列》37、 ReactNative百度地图开源组件使用
- 整理工具下载地址