
我正在嘗試管理由本地腳本生成的日誌。這些日誌只不過是重新導向到本機檔案的 stdout 和 stderr。我沒有 root 存取權限,嘗試使用本機設定檔以本機使用者身分執行 logrotate 會出現錯誤:
Ignoring /home/user/customlogfile because the file owner is wrong (should be root).
Handling 0 logs
是否可以以本機使用者身分執行 logrotate?
答案1
我正在嘗試管理由本地腳本生成的日誌。這些日誌只不過是重新導向到本機檔案的 stdout 和 stderr。
logrotate
那你一開始就不需要。
為自己取得一項或多項:
- 丹·伯恩斯坦的
multilog
(從守護程式工具), 或者 - 布魯斯·岡特的
multilog
(從daemontools-encore), 或者 - 洛朗·貝爾科特
s6-log
(從s6), 或者 - 格里特·佩普的
svlogd
(從運行), 或者 - 韋恩馬歇爾的
tinylog
(從罪犯), 或者 - 我的
cyclog
(來自開胃菜)。
並以正常方式透過管道將腳本標準輸出和標準錯誤發送到其標準輸入。
他們將在您指定的目錄中寫入一組自動循環、可按需輪換、嚴格限制大小的日誌,根本不需要任何額外的日誌輪替程式。他們都不需要任何超級使用者權限。 (事實上,遠非需要或期望超級用戶權限這是最佳實踐在其最廣為人知的用例中,記錄守護程序輸出,以在非特權帳戶下運行它們。