有用的命令:
1. (根据rotate.conf的设置进行操作,并显示详细信息。)
/usr/sbin/logrotate -v /etc/rotate.conf
2. (根据rotate.conf的设置进行执行,并显示详细信息,但是不进行具体操作,debug模式)
/usr/sbin/logrotate -d /etc/rotate.conf
3. (各log文件的具体执行情况)
vi /var/lib/logrotate.status
4. (通过rpm包安装的软件的logrotate信息会自动添加于此)
ls /etc/logrotate.d/
常见问题:
1. log does not need rotating
logrotate最容易遇到的问题就是:创建完一个新的configure以后想用命令1进行执行查看运行情况时。logrotate会提示不需要rotate。出现原因是,logrotate在对status未记录的文件进行第一次rotate时,会自动在status添加一条这个文件的记录,并将操作时间设为当天。因此,接下来程序判断是否有必要对此文件进行rotate时会发现这个文件今天已经操作过了,就不进行相关操作了。
解决:第一次执行后,运行命令3,把对应文件的日期改为昨天,再次运行。或者可以在运行时用-s来指定status文件,然后进行修改。
2. 一些log文件莫名的被rotate
这可能是由于相关软件是通过rpm安装的,安装后自动将自定义的conf文件放到/etc/logrotate.d/下,并通过cron.daily自动执行。
解决:删除/etc/logrotate.d/下相关的文件
3. compress、copytruncate、delaycompress、dateext
几个选项的执行顺序:
首先程序先判断是否有昨天的文件(name-20090713)未压缩,有则压缩,没有则跳过这一步
然后,程序判断是否要对log进行rotate,需要则进行复制截断。命名为name-20090714
最后,程序判断现有压缩包的个数是否超过最大值(即rotate n的值),如果超过则把最老的包进行删除。
阅读(9039) | 评论(0) | 转发(0) |