來自:
http://blog.chinaunix.net/uid-20673872-id-1578417.html
這樣說恐怕也不好理解,不如先讓我們看看 /etc/logrota.conf 這個設定檔的內容吧:
weekly rotate 4 errors root create #compress include /etc/logrotate.d /var/log/wtmp { monthly create 0664 root utmp rotate 1 } |
在前面的 5 行是屬於 global 設定,這些都是預設值。在後面的獨立單元設定中可以重新定義設定值,否則就使用 global 設定值。最後 5 行則是獨立單元的設定,待會再說明。在中間的include 那行,類似 xinetd.conf 的設定一樣,也就是將其它個別單元設定以獨立的檔案形式集中存放在 /etc/logrotate.d 目錄中,當然,如果您喜歡,也可以全部寫在一個檔案上面。
讓我們先解讀前面的 global 設定吧:
weekly: 進行記錄檔更換的時間間隔,這裡是每星期一次,您也可以改為 daily 或monthly。除了以時間為標準之外,您還可以用檔案體積為標準,如 size=100K 。不管用哪種標準,只要條件成立,就進行 rotate 的動作。;
rotate 4: 一共進行多少次更換。也就是說,一共要儲存多少箇舊的記錄檔。在logroate 進行更換的時候,原本的記錄檔,例如 messages,會被更名為 messages.1;而 messages.1 則改名為 messages.2 ;如此類推,一直更換下去。這裡設定為 rotate 4 ,也就是說,最多將檔案更換為 messages.4 就不再更換了,那麽,如果原本已經有messages.4 這個檔的話,就會被刪除,除非您有另外的備份,否則就永遠找不回來了。
errors root: 當 lograote 程式在執行的時候,如果遇到錯誤,會將資訊以 email形式寄給 root 信箱。
create: 檔原本的記錄檔被 rotate 之後,是否要建立一個新的空的原始記錄檔名稱。這個當然要啦,除非您確定不用,則可以用 nocreate 設定代替。
compress: 經過 rotate 的檔案,是否使用 gzip 進行壓縮。目前是註解起來的,所以沒有使用這個功能
最後面的 5 行句子呢,則是關於 /var/log/wtmp 這個記錄檔的設定,它的更換標準改為monthly,而不採用 global 的 weekly 設定;然後進行 rotate 之後以 0664 的 permission建立空白原始檔,其 owner 身份是 root、goup 身份是 utmp。而且,它只進行一次 rotate 就夠了。