貌似logrotate没有运行(后证明为crontab相关)

Web、Mail、Ftp、DNS、Proxy、VPN、Samba、LDAP 等基础网络服务
回复
weyllor
帖子: 8
注册时间: 2006-04-12 10:06

貌似logrotate没有运行(后证明为crontab相关)

#1

帖子 weyllor » 2009-03-24 11:10

1. 很多日志项我都设置为daily,但是貌似一直都没成功过。
2. 我的root帐号没有开启,会不会和这个有关呢?
3. 下面是/var/lib/logrotate/status的记录。其中有两天的记录,3-20/3-24都是我手工sudo logrotate /etc/logrotate.conf的。
4. 即便手工logrotate还是有N多日志没有滚动

代码: 全选

logrotate state -- version 2
"/var/log/apache2/access.log" 2009-3-24
"/var/log/apache2/error.log" 2009-3-20
"/var/log/apache2/suexec.log" 2009-3-20
"/var/log/apt/term.log" 2009-3-20
"/var/log/aptitude" 2009-3-20
"/var/log/dpkg.log" 2009-3-20
"/var/log/exim4/mainlog" 2009-3-20
"/var/log/exim4/rejectlog" 2009-3-20
"/var/log/exim4/paniclog" 2009-3-20
"/var/log/ppp-connect-errors" 2009-3-20
"/var/log/wpa_action.log" 2009-3-24
"/var/log/wtmp" 2009-3-24
"/var/log/btmp" 2009-3-24
"/var/log/boot" 2009-3-20
"/var/log/dmesg" 2009-3-20
"/var/log/user.log" 2009-3-20
"/var/log/mail.warn" 2009-3-20
"/var/log/mail.log" 2009-3-20
"/var/log/mail.info" 2009-3-20
"/var/log/mail.err" 2009-3-20
"/var/log/lpr.log" 2009-3-20
"/var/log/udev" 2009-3-20
"/var/log/faillog" 2009-3-20
"/var/log/fontconfig.log" 2009-3-20
"/var/log/pycentral.log" 2009-3-20
"/var/log/messages" 2009-3-20
"/var/log/auth.log" 2009-3-20
"/var/log/daemon.log" 2009-3-20
"/var/log/kern.log" 2009-3-20
"/var/log/lastlog" 2009-3-20
"/var/log/debug" 2009-3-20
"/var/log/syslog" 2009-3-20
"/srv/projects/redmine/log/production.log" 2009-3-20
我的系统是ubuntu server 8.04
下面是logrotate.con的部分内容:

代码: 全选

……

/var/log/messages /var/log/auth.log /var/log/daemon.log /var/log/kern.log {
    missingok
    daily
    size 1M
    create 0644 syslog adm
    rotate 6
}

/var/log/lastlog {
    missingok
    daily
    size 1M
    create 0664 root utmp
    rotate 6
}

上次由 weyllor 在 2009-03-30 12:36,总共编辑 1 次。
weyllor
帖子: 8
注册时间: 2006-04-12 10:06

Re: 貌似logrotate没有运行

#2

帖子 weyllor » 2009-03-26 18:58

在Ubuntu.org转了一圈回来,发现遇到类似的人不少,包括不少自称experienced Linux user的人。
不过我这个问题起因和结果都比较简单,以至于有点小小尴尬:
不关logrotate的事,是我的root的crontab任务运行不了。
按照crontab的manual,有三种方式提交计划任务:
1. crontab CONFIG_FILE
2. crontab -eu USERNAME
3. nano /etc/crontab
这个配置的字段与上一个类似,就多了一个USER字段用以标明是哪个用户的任务。但是我估计什么时候直接把这个文件当成root的CONFIG_FILE提交了(虽然这个文件顶部的注释已经声明不能这样干~)。于是我root的任务库就乱了,自然总是不能正常工作。

解决办法很简单:
sudo crontab -ru root

然后就可以继续添加任务了。

PS.
其实crontab还是可以改进的,比如crontab -l就不能列出在/etc/crontab里面添加的任务,这样的两套数据会让偶这样的菜鸟迷糊的……但是谁让人家都在/etc/crontab里面事前声明过了,我不信邪也怪不了别人啊……
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 貌似logrotate没有运行

#3

帖子 eexpress » 2009-03-27 9:26

怎么会这样。我们都正常啊。
记得改过回滚的周期。
● 鸣学
回复