一、基本概念
logrotate是一款系統日誌文件管理工具,它可以幫助管理員進行日誌文件的切割、壓縮和備份。logrotate默認配置文件為/etc/logrotate.conf。
二、配置文件結構
logrotate.conf文件採用文本格式,由多個section組成。一個section由多個關鍵字和屬性組成。常用section有:
/var/log/syslog { weekly rotate 4 compress delaycompress missingok notifempty create 0644 root root }
其中,第一行是日誌目錄,大括號中的內容是該日誌的配置屬性。
三、配置文件關鍵字
1.周期設置
daily:按天進行日誌輪換
weekly:按周進行日誌輪換
monthly:按月份進行日誌輪換
yearly:按年份進行日誌輪換
2.保存日誌數量
rotate n:保留n個日誌,舊的日誌會被刪除
3.壓縮設置
compress:日誌文件會被壓縮成.gz文件
delaycompress:在下一次輪換之前,保留壓縮前的文件
uncompress:在輪換時將.gz文件解壓為普通文件
4.缺失日誌處理
missingok:如果日誌文件不存在,不進行任何處理
notifempty:如果日誌文件為空,不進行任何處理
5.創建新文件
create:指定創建新文件的權限和屬主
6.備份設置
copy:備份方式為拷貝原文件
dateext:備份文件名稱會加上日期後綴
nocreate:不創建備份文件
nocompress:不進行壓縮
nodateext:不加上日期後綴
norotate:不進行輪換處理
四、示例
以下是日誌輪換的一些常用配置:
/var/log/messages { rotate 5 weekly size 100k compress delaycompress notifempty create 0600 root root }
每周輪換一次日誌,保存5個備份文件,當一個日誌文件超過100KB時就進行輪換,同時對壓縮文件和舊日誌文件進行延遲壓縮。
五、總結
logrotate是一個簡單而強大的日誌管理工具,通過合理的配置可以大大節省系統的磁盤空間和數據備份工作。通過本文的介紹,讀者應該能對logrotate的基本結構和常用配置有更深入的理解。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/249747.html