如果只是想要查看最近用户使用删除命令删除的文件,其实可以使用history命令,该命令可以显示最近一段时间内执行过的操作命令,然后利用grep筛选出来:
history|grep rm
如果是程序或者进程后台进行删除的文件,或者系统内部删除的文件,也就无法通过上面的方法查找到最近删除的文件了,
但是如果删除的文件是在linux系统的ext2文件系统下的话,也可以使用debugfs命令来查看删除的文件:
1,首先查看需要恢复的文件所在的文件系统
命令行模式下输入指令mount
1
2
3
4
[xuwangcheng14@root]# mount
/dev/xvda1 on / type ext2 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
由上知,/dev/xvda1挂载在/下,即根目录,且文件系统是ext2
2,将被删除的文件所在的分区重新挂载成只读
1
[xuwangcheng14@root]# mount -n -o remount,ro /dev/xvda1
3,使用debugfs工具查找删除的文件和恢复文件
1
2
3
[xuwangcheng14@root]# debugfs /dev/xvda1
debugfs 1.42 (29-Nov-2011)
debugfs: lsdel
进入debugfs模式后输入lsdel后可以看到被删除的文件信息
stat显示某个节点所对应的文件信息,
恢复文件使用dump 文件路径。