Linux中日志的轮替(切割和轮换)
日志的轮替命令:logrotate [选项] 配置文件名
-v:显示日志的轮替过程
-f:强制配置文件中的所有日志进行轮替,不管日志轮替的条件是否已经符合
不加选项时,会按照配置文件中的条件进行日志轮替
其实系统进行每天的日志轮替就是系统内部定时运行了此命令
该命令的配置文件/etc/logrotate.conf
daily:日志的切轮替周期是每天
weekly:日志的轮替周期是每周
monthly:日志的轮替周期是每月
rotate 数字:保留的日志文件个数,当达到指定个数,会按照日志新旧把最旧的删除。0代表不保存
compress:日志轮替时,旧的日志进行压缩
create 权限 所有者 所属组:建立新日志文件的同时指定新的日志文件的权限,所有者和所属组(如create 0600 root root)直接写create,省略后面的代表按照默认权限来设定新的日志文件。
mail address:当日志轮替时,输出内容通过邮件发送到指定的邮件地址,如mail [email protected]
missingok:如果日志不存在,则忽略该日志的警告信息
notifempty:如果日志为空文件,则不进行日志轮替。
minsize 大小:日志轮替的最小值,就是说日志一定要达到这个最小值才会轮替,否则即使时间达到轮替时间也不轮替。
size 大小:日志只有大于指定大小才进行日志轮替,而不是按照时间轮替,如size 100k
dateext:使用日期作为日志轮替文件名的最后部分。如secure-20160413。没有该参数日志轮替以后的文件名会以".数字"的格式轮替,如secure.1、secure.2等等。
在配置文件中,上面的没有在中括号里的是全局配置,在中括号中的配置为针对配置,是针对某个日志单独的配置,这里面如果写的参数定义与上面全局冲突,以中括号里面的配置为准。
另外在全局配置里,只是针对RPM包安装的服务和系统服务日志生效,如果要把源码包安装的服务的日志也使用此工具轮替的话,可以使用下面的中括号方式在中括号前面指定源码包的日志文件名,如:
/usr/local/apache/logs/access_log{
daily
......
}
即可实现源码包安装的服务日志轮替。