查看crontab日志、解决:Authentication token is no longer valid; new one required、linux系统,启动、停止、重启crontab服务

 一、查看crontab的日志

1. linux

看 /var/log/cron.log这个文件就可以,可以用tail -f /var/log/cron观察

2. unix

在 /var/spool/cron/tmp文件中,有croutXXX001864的tmp文件,tail 这些文件就可以看到正在执行的任务了。

3. mail任务

在 /var/spool/mail/root 文件中,有crontab执行日志的记录,用tail -f /var/spool/mail/root 即可查看最近的crontab执行情况。

二、解决:Authentication token is no longer valid; new one required

1、问题描述:服务器的crontab,每天未正常执行,检查日志发现大量报错,如下:

2、问题原因:是由于近期用户密码更新所致crontab用户密码过期

3、解决方案:

1、chage -l ${username}查看用户密码期限相关信息

chage -l root

2、修改Maximum number of days between password change期限至永久 

chage -M 99999 root

 3、至此问题解决,重设定时任务,查看日志检查是否存在其他问题

4、命令介绍

Usage: chage [options] LOGIN

Options:
  -d, --lastday LAST_DAY        set date of last password change to LAST_DAY
  -E, --expiredate EXPIRE_DATE  set account expiration date to EXPIRE_DATE
  -h, --help                    display this help message and exit
  -I, --inactive INACTIVE       set password inactive after expiration
                                to INACTIVE
  -l, --list                    show account aging information
  -m, --mindays MIN_DAYS        set minimum number of days before password
                                change to MIN_DAYS
  -M, --maxdays MAX_DAYS        set maximim number of days before password
                                change to MAX_DAYS
  -R, --root CHROOT_DIR         directory to chroot into
  -W, --warndays WARN_DAYS      set expiration warning days to WARN_DAYS
 --------------------------------------------------------
 -d 日期 #修改 /etc/shadow 文件中指定用户密码信息的第 3 个字段,也就是最后一次修改密码的日期,格式为 YYYY-MM-DD
 -E 日期 #设置密码到期的日期,过了这天,此账号将不可用。0表示马上过期,-1表示永不过期。格式YYYY-MM-DD
 -h #查看帮助信息
 -I 天数 #设置密码过期天数
 -l #展示账号的相关日期信息
 -m 天数 #密码可以更改的最小天数。为零代表任何时候都可以更改密码。
 -M 天数 #密码保持有效的最大天数。
 -W 天数 #修改密码到期前的警告天数,也就是 /etc/shadow 文件中的第 6 个字段;

example:
1.设置mysql用户60天后密码过期,至少7天后才能修改密码,密码过期前7天开始收到告警信息。
chage -M 60 -m 7 -W 7 mysql;

2.强制新建用户第一次登陆时修改密码.
chage -d 0 test;
 

三、linux系统,启动、停止、重启crontab服务

1、情况一:正常情况(系统有service命令)

重启服务命令:
service crond restart

启动服务命令:
service crond start

停止服务命令:
service crond stop

2、情况二:当linux发行的版本没有service这个命令时候,用如下命令进行停止启动:

停止服务:
/etc/init.d/cron stop

启动服务:
/etc/init.d/cron start

猜你喜欢

转载自blog.csdn.net/wd520521/article/details/120512236