恢复条件:有进程正在使用该文件
测试方法:
1.把系统日志文件messages文件删除
rm -f /var/log/messages
2.利用lsof来查找正在使用该文件的进程号等相关信息
lsof |grep messages
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
syslogd 2230 root 2w REG 253,0 209329 5586981 /var/log/messages
3.确认proc下的文件是否是我们要找回的文件
tailf /proc/2230/fd/2 (/proc/PID/fd/FD)
4.找回文件
cat /proc/2230/fd/2 >/var/log/messages
5.排除后患
该文件按以上方法被找会之后,原来写内容到该文件的进程将仍然把日志继续写入/proc/2230/fd/2,所以需要对该进程做重启操作。
比如上例,messages被删除重新找回之后,syslod进程不会再写内容到日志文件里了,必须运行用以恢复: service syslog restart
阅读(403) | 评论(0) | 转发(0) |