Centos

Lighttpd 停止寫入 access.log

  • March 6, 2015

我的lighttpd安裝有這個問題,access.log一旦預設的日誌循環軟體access.log在將其複製到access.log-YYYYMMDD. 我必須停止並重新啟動服務才能繼續記錄。

以下是發生這種情況的 dedi 的unamecentos-release資訊:

np ~ > uname -a && cat /etc/centos-release
Linux sevlet 3.10.0-123.20.1.el7.x86_64 #1 SMP Thu Jan 29 18:05:33 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
CentOS Linux release 7.0.1406 (Core)

我不知道這個盒子上預裝了什麼日誌旋轉軟體,我也不知道為什麼access.log一旦文件被旋轉出來,lighttpd 就完全停止寫入。任何人都知道發生了什麼和/或如何解決它?

解決了!

任何人在安裝最小的 CentOS 7 時遇到此問題或類似問題,請閱讀:

@chutz建議我看看lighttpd. /etc/logrotate.d/工作的預設配置lighttpd,但它要求killall重新啟動守護程序。CentOS 7 的最小安裝不包括killall.

在 CentOS 上安裝:

yum -y install psmisc

希望這對某人有幫助!

CentOS 自帶 logrotate。

移動日誌文件後,您確實需要重新啟動或以其他方式向任何惡魔發出信號。這就是 Linux 的工作原理。該文件可能被重命名或刪除,但只要一個程序打開它(即一個程序打開一個獨立於文件名的文件句柄),該程序就可以繼續寫入它。是的,可以繼續寫入已刪除的文件,有時甚至可以恢復已刪除的文件,只要有人仍然打開它。

查看/etc/logrotate.d有關如何在日誌輪換後重新載入程序的範例。

PS 我沒有註意到您正在執行 CentOS 7。我的回答可能非常錯誤。

引用自:https://serverfault.com/questions/673393