Linux 文档阅读 - Logrotate

查看原文

Logrotate 是操作系统中用于管理日志文件的小工具。Rotate 是指一种日志滚动存储的策略,日志文件要是不管理就会越来越大最后导致磁盘空间没掉了,有了 Rotate,会按照一些规则把曾经打过的日志转储到另外一个文件去,并按照日期或者什么的规则来命名。这样我们就能按照时间去查看以前的备份。超过限制的日志 logrotate 也会自动丢掉,不用操心磁盘不够用。

  • 规则上,时间可以是按天,周,月。
  • 格式上,rotate 后的文件可以做普通的文本存储,也可以用 gz 压缩。
  • 一般 logrotate 不会一天碰日志文件多次,除非规则是基于文件大小,并且一天通过 cron job 运行多次。
  • logrotate 支持传进来多个配置文件,后面会覆盖前面。
  • 配置文件默认是 /etc/logrotate.conf。可以在 /var/lib 下面找到最近的 logrotate 运行的状态更新,内容会是日志模式及其对应的运行时间。
  • 配置文件格式:
compress
/var/log/the-file-you-want-to-rotate.*.log { 
    rotate 5
    monthly
}
  • 可以用 postrotate ... endscript 配置运行完 rotate 以后触发的操作。