日志轮转不产生新的空白日志,只有旧日志被轮转,求解释!

组枪玩剑 2015-06-12 11:11:42
配置linux的日志轮转,配置如下,如果没有加/sbin/service rsyslog restart,则轮转只产生旧日志的轮转日志,如mclog-20150612,而不产生新的空白日志mclog。下一次轮转时因找不到mclog而导致脚本无法执行,导致不能继续轮转。
这显然是不正常的,如果必须要通过在重启日志管理服务来生成新的空白日志的话。请大神指出我的错误!
/etc/rsyslog下配置:
mail.*,cron.* /var/log/mclog

/etc/logrotate.d/mclog下配置:
/var/log/mclog
{
weekly
minsize 10M
rotate 3
dateext
#sharedscripts
#prerotate
#/sbin/service rsyslog reload
#/bin/chown root /var/log/mclog
#/bin/chgrp nobody /var/log/mclog
#/bin/chmod 0640 /var/log/mclog
#endscript

sharedscripts
postrotate
#/sbin/service rsyslog restart #区别是这句
/bin/chown root /var/log/mclog
/bin/chmod 0640 /var/log/mclog
endscript
}



结果:
1. 脚本有重启服务语句时,执行logrotate -f命令前后:

2.脚本没有重启服务语句,执行logrotate -f命令前后::
...全文
183 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
组枪玩剑 2015-06-13
  • 打赏
  • 举报
回复
听取楼上意见,写成如下配置就可以了: /var/log/mclog { weekly minsize 10M rotate 3 dateext create 0644 root nobody }
组枪玩剑 2015-06-13
  • 打赏
  • 举报
回复
听取楼上意见,写成如下配置就可以了: /var/log/mclog { weekly minsize 10M rotate 3 dateext #create 0644 root nobody } 或者: /var/log/mclog { weekly minsize 10M rotate 3 dateext sharedscripts postrotate /usr/bin/killall -HUP syslod endscript } 显然第一种在参数中配置更简洁,用脚本显得麻烦些!!!!谢谢!!!
yaray 2015-06-13
  • 打赏
  • 举报
回复
touch 一下就行了
KEL-1 2015-06-13
  • 打赏
  • 举报
回复
配置文件中缺少参数create,从而没有创建新的日志档案
组枪玩剑 2015-06-12
  • 打赏
  • 举报
回复
结果没有新的空白日志:

19,611

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧