Linux基础—logrotate日志轮转

简介

日志 记录了程序运行时各种信息。
通过日志可以分析用户行为,记录运行轨迹,查找程序问题。
可惜磁盘的空间是有限的
日志论战就像飞机里的黑匣子,记录的信息再重要也只能记录最后一段时间发生的事。
为了节省空间和整理方便,日志文件经常需要按!时间或!大小等维度分成多份,删除时间久远的日志文件。

工作原理

按照配置进行轮转
配置文件种类
主文件:/etc/logrotate.conf (决定每个日志文件如何轮转)
子文件夹:/etc/logrotate.d/*
观察主文件和子文件

[root@qianfeng ~]# ls /etc/logrotate.conf /etc/logrotate.d/
/etc/logrotate.conf
/etc/logrotate.d/:
acpid cups iscsiuiolog ppp rpm subscription-manager up2date wpa_supplicant
conman httpd mgetty psacct setroubleshoot syslog vsftpd.log yum

主配置文件介绍

[root@localhost ~]# vim /etc/logrotate.conf 
=========全局设置==========
weekly 		//轮转的周期,一周轮转
rotate 4 		//保留4份
create 		//轮转后创建新文件
dateext 		//使用日期作为后缀
#compress	 //是否压缩
include /etc/logrotate.d	//包含该目录下的子配置文件
		/var/log/wtmp { 	//对某日志文件设置轮转的方法
monthly 				//一月轮转一次
minsize 1M 		//最小达到1M才轮转,monthly and  minsize
create 0664 root utmp	 //轮转后创建新文件,并设置权限
rotate 1 		//保留一份
}
		/var/log/btmp {
missingok 		//丢失不提示
monthly 			//每月轮转一次
create 0600 root utmp 	//轮转后创建新文件,并设置权限
rotate 1 		//保留一份
}

yum日志轮转实例
轮转的目标文件/var/log/yum.log
配置轮转规则
# vim /etc/logrotate.d/yum
/var/log/yum.log {
missingok //丢失不执行
# notifempty //空文件不论转
# size 30k //达到30k轮转, daily or size
# yearly //或者一年一轮转
daily //缩小周期到1天
rotate 3 //轮转保留3次
create 0777 root root
}
测试
错误示范
# /usr/sbin/logrotate /etc/logrotate.conf //手动轮转
# ls /var/log/yum*
/var/log/yum.log
文件只有一个。因为日期没变
正确示范
修改时间,手动触发轮转
# date 04011000
把时间向未来推移
# /usr/sbin/logrotate -s /var/lib/logrotate/logrotate.status /etc/logrotate.conf
# ls /var/log/yum*
日志文件已经出现多个
关于时间
# grep ‘yum’ /var/lib/logrotate/logrotate.status //记录所有日志文件最近轮转的时间
“/var/log/yum.log” 2019-3-31-10:0:23
//如果没有轮转过,第一次只有记录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值