我是系統管理新手,有幾個問題:
- 系統在哪裡以及如何啟動 logrotate 過程?
- 我的“每日”輪換日誌檔案在一天中的什麼時間輪換?
- 是否對 *.log 條目中匹配的每個日誌檔案執行預旋轉命令?
謝謝
答案1
1)我舊的 Hardy 安裝上的 logrotate 與 Mike 的答案相同
2) 檢視 /etc/crontab 文件,我的安裝中的 cron.daily 於上午 6:25 運行
3) 如果預輪換命令被分配給某個模式,並且日誌檔案與該模式匹配,那麼是
答案2
從https://help.ubuntu.com/community/LinuxLogFiles:
通常,logrotate 從系統範圍的 cron 腳本 /etc/cron.daily/logrotate 調用,並由設定檔 /etc/logrotate.conf 進一步定義。可以將單獨的設定檔新增至 /etc/logrotate.d 中(例如儲存 apache2 和 mysql 配置的位置)。
涉及的文件有:
/etc/cron.daily/logrotate
/etc/logrotate.conf
/ec/logrotate.d/*
與 Matt 一樣,cron.daily 作業在我的系統上於早上 6:25 啟動,但實際執行時間將根據 cron.daily 中的作業、系統負載等而有所不同。
/etc/cron.daily/logrotate使用 logrotate.conf 檔案運行 logrotate:
“/usr/sbin/logrotate /etc/logrotate.conf”
/etc/logrotate.conf指向 /etc/logrotate.d 目錄:
“包括/etc/logrotate.d”
/etc/logrotate.d包含特定日誌檔案的單獨腳本
。允許使用通配符,因此「/var/log/*log」之類的內容應該會影響 /var/log/ 中以 .log 後綴結尾的所有檔案。
如果 prerotate 是屬於 '/var/log/*log' 的區塊中使用的關鍵字之一,那麼這些檔案將在其上運行 prerotate 命令,但「僅當日誌實際上將被旋轉時。」(從 男人對數旋轉)
答案3
看下面的
/etc/cron
ls /etc/cron.daily
在RedHat中是
/etc/cron.daily/logrotate