lsof:列出进程打开的文件
文件删除:一般rm命令相当于只是删除文件的硬链接,如果此时进程还调用这个文件,就说明这个文件并没有完全被删除,那么如何恢复呢?
首先应该查看该文件是否被进程调用(这里用/var/spod/mail)
lsof /var/spod/mail
syslogd 1283 root 2w REG 3,3 5381017 1773647 /var/spod/mail(deleted)
这个时候我们就可以找到该文件的进程ID了,就可以在/proc/1283/fd/2(fd一个包含所有文件描述符的目录)里面找到该文件的相关信息了。
然后,使用重定向就可以将文件恢复了
cat /proc/1283/fd/2 > /var/spod/mail