密码过期导致cron job不执行

转自:http://blog.sina.com.cn/s/blog_704836f401016ss5.html

 

一台监控的cacti主机,突然不出图了。
从cron的log中看到是在某一天的8:00准时没有了如下的记录:
(cactiuser) CMD (/usr/bin/php /home/wwwroot/cacti/poller.php > /dev/null 2>&1)

按照常规查问题的思路:

1.那个时间点之前做过什么改变?
  ----〉没有做过
2.crond进程是否正常运行?是只有一个job不执行还是所有job都不执行了?
  ----〉crond正常,只有cactiuser 的job不运行了
3.root用户的job运行正常吗?
  ----〉root用户的所有job都运行正常

因为脚本和权限都没有动过,所以不是这方面的问题。

查看/var/log/message,发现如下的错误信息:
crond[7079]: Authentication token is no longer valid; new one required.

原来是这个用户的密码过期了。因为安全部门有强制性的要求,无法修改成密码永不过期,只好定期修改了。
如果允许设置永不过期,可以执行:

[root@cacti-xd 10]# chage -m 0 -M -1 -W -1 -E -1 cactiuser
[root@cacti-xd 10]# chage -l cactiuser
Minimum:        0
Maximum:        -1
Warning:        -1
Inactive:       -1
Last Change:            Jun 26, 2012
Password Expires:       Never
Password Inactive:      Never
Account Expires:        Never

参考文档:
http://www.friendlytutorials.com/index2.php?option=com_content&do_pdf=1&id=53

 

查看用户密码是否过期可用

ciaos:~ # chage -l ciaos
Minimum:        0
Maximum:        99999
Warning:        7
Inactive:       -1
Last Change:            Jul 12, 2011
Password Expires:       Never
Password Inactive:      Never
Account Expires:        Never

你可能感兴趣的:(cron)