/etc/logrotate.conf


logrotate

日志會隨着時間增長,在這種情況下,我們需要手動執行日志清理以回收空間,這是一件繁瑣的管理任務。
Linux 中配置 logrotate 程序,它可以自動執行日志文件的輪換、壓縮、刪除和用郵件發出。

logrotate 是如何工作的

默認情況下,logrotate 命令作為放在 /etc/cron.daily 中的 cron 任務,每天運行一次,它會幫助你設置一個策略,其中超過某個時間或大小的日志文件被輪換。

命令: /usr/sbin/logrotate

配置文件: /etc/logrotate.conf

[root@client01 ~]# ls /etc/cron.daily/
logrotate makewhatis.cron
[root@localhost ~]$ cat /etc/logrotate.conf 

weekly                      # 每周切割一次
rotate 4                    # 只保留四份文件
create                      # 切割后會創建一個新的文件
dateext                     # 指定切割文件的后綴名,這里以日期為后綴名
include /etc/logrotate.d    # 包含其他配置文件的目錄

/var/log/wtmp {             # 對哪個文件進行切割
    monthly                 # 每個月切割一次
    create 0664 root utmp   # 指定創建的新文件的權限,屬主,屬組
        minsize 1M          # 文件容量超過這個值時才進行切割
    rotate 1                # 只保留一份文件
}

/var/log/btmp {
    missingok
    monthly
    create 0600 root utmp
    rotate 1
}
配置參數:
compress   通過gzip 壓縮轉儲以后的日志 nocompress  不需要壓縮時,用這個參數 copytruncate  用於還在打開中的日志文件,把當前日志備份並截斷 nocopytruncate  備份日志文件但是不截斷 create mode owner group   轉儲文件,使用指定的文件模式創建新的日志文件 nocreate   不建立新的日志文件 delaycompress 和 compress   一起使用時,轉儲的日志文件到下一次轉儲時才壓縮 nodelaycompress    delaycompress 選項,轉儲同時壓縮。 errors address   專儲時的錯誤信息發送到指定的Email 地址 ifempty   即使是空文件也轉儲,這個是 logrotate 的缺省選項。 notifempty   如果是空文件的話,不轉儲 mail address   把轉儲的日志文件發送到指定的E-mail 地址 nomail   轉儲時不發送日志文件 olddir directory   轉儲后的日志文件放入指定的目錄,必須和當前日志文件在同一個文件系統 noolddir   轉儲后的日志文件和當前日志文件放在同一個目錄下 prerotate/endscript   在轉儲以前需要執行的命令可以放入這個對,這兩個關鍵字必須單獨成行 postrotate/endscript   在轉儲以后需要執行的命令可以放入這個對,這兩個關鍵字必須單獨成行 daily   指定轉儲周期為每天 weekly   指定轉儲周期為每周 monthly   指定轉儲周期為每月 rotate count   指定日志文件刪除之前轉儲的次數,0 指沒有備份,5 指保留5 個備份 tabootext [+] list 讓logrotate   不轉儲指定擴展名的文件,缺省的擴展名是:.rpm-orig, .rpmsave, v, 和 ~ size  size當日志文件到達指定的大小時才轉儲,Size 可以指定 bytes (缺省)以及KB (sizek)或者MB (sizem)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM