我有一個單獨的日誌記錄文件local7
,該文件是touch
ed 和
權限設置,從我的安裝程式。但有時我發現日誌沒有被寫入(在我重新安裝之後),直到我這樣做rsyslog restart
!
是否強制重新開始 rsyslog
日誌檔案是否touch
被另一個程式/應用程式編輯?
(由於安裝程式運行為root
,日誌檔案的時間戳將由於以下原因而更改touch
- 這會導致rsyslog
不寫入日誌檔案嗎?)
答案1
rsyslogd 會連續開啟每個日誌檔案以進行寫入,它不知道您已將檔案從其下方拉出。安裝程式刪除的檔案仍在磁碟上處於未連結狀態,並且仍在寫入中。您可以告訴 rsyslogd 重新開啟所有日誌文件,killall -HUP rsyslogd
而不是完全重新啟動。
答案2
出於顯而易見的原因,rsyslog 是一個嚴格設計的程序,遵循其配置。這是明確的。如果可以做你想做的事,那就會造成一個巨大的安全漏洞。