Centos - /var/log/secure 沒有記錄任何內容

Centos - /var/log/secure 沒有記錄任何內容

我不小心刪除了 /var/log/secure,我嘗試重新建立它,但在幾次連接後它仍然保持空白。

在一切正常的伺服器上,使用 ls -l 我有:

-rw-------. root:root /var/log/secure

在它不起作用的伺服器上,使用 ls -l 我有:

-rw------- root:root /var/log/secure

唯一的差別在於「.」的權利。在該行的末尾,它在無法工作的伺服器上丟失了。

任何想法 ?

答案1

所以問題是您的系統日誌進程仍然打開已刪除的檔案。您需要重新啟動系統日誌進程。 centos中預設是rsyslog

 service rsyslog restart 

我相信如果您嘗試類似的操作,您也可以看到它已打開為已刪除

 lsof | grep '/var/log/secure'

這將為您提供保持其開啟的 pid/進程名稱。例如

[[email protected] ~]#  lsof | grep '/var/log/secure'
rsyslogd    977       root    5w      REG              253,0   585555    2756243 /var/log/secure

所以 rsyslogd 進程將其保持開啟狀態

[[email protected] ~]# ps aux | grep 977
root       977  0.0  0.0 249856  5916 ?        Sl    2014   8:25 /sbin/rsyslogd -i /var/run/syslogd.pid -

相關內容