Linux系統中恢復被刪除日誌的方法

測試環境: centos 6.3

 

  日誌文件是我們用來查看服務器運行情況的重要依據,但是有時人爲的,不小心或故意刪除日誌,所以恢復被刪除的日誌就非常重要。我們知道,程序運行時,所需要的數據會存放在內存裏,根據這個原理,我們可以使用lsof 程序來恢復日誌文件。具體操作如下:


首先: 安裝lsof ,在centos6.3中,可以直接yum -y install lsof


其次: 查看該日誌文件被哪個程序所用,記下PID,現在我們以/var/log/messages 日誌文件爲例,

     

      先人爲刪除 rm -f /var/log/messages

      查看被哪個程序所用 lsof | grep /var/log/messages

顯示如下:

      rsyslogd   1175   root   1w      REG              253,0       41146    1981518 /var/log/messages (deleted)


PID=1175


現在我們進入 cd /proc/1175/fd  (1175爲PID值)

這個文件夾下有多個用數字命名的文件,這些數字是文件描述符,如上紅字,我們這裏的文件描述符是1,

現在恢復日誌

cat 1 > /var/log/messages

日誌文件就得以恢復


其他配置文件好像用這種方法恢復不了,我試了lamp ,都恢復不了。其他的自己可以試試。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章