日志文件是Linux系统维护中不可少的组成部分,日志文件可以帮助跟踪系统中多种服务的事件,排查问题,但是日志会随着系统开机时间热不断的变大,我们需要一种被称为轮替的技术来限制,一旦超过了限制的大小,就要对其的内容进行抽取,将老的内容放入归档文件中
logrotate是每一位Linux管理员都应该了解的命令,可以将日志文件的大小限制在给定SIZE,将剩下的数据移入新的文件
我们还可以轻松的利用配置,来将老的日志文件和压缩成logfile_name.1.gz
logrotate的配置目录位于 /etc/logrotate.d
我们可以发现很多其他的日志文件配置
cat /etc/logrotate.d/program
/var/log/program.log{
missingok
notifempty
size 30lk
compress
weekly
rotate 5
create 0600 root root
}
这就是全部的配置,我们在大括号外表明了日志文件路径,旧的日志文件归档后放入同一个目录
在括号内,我们配置了日志文件的配置
missingok 日志文件丢失,则忽略
notifempty 当非空的时候再进行检查
size 30k 轮替的日志大小
compress 使用gzip来进行压缩
weekly 轮替的事件间隔,可以是yearly daily
rotate,保留的文件归档数量,指定的是5,也就是只保留5个
create 这是归档文件的模式 用户和用户组