定时任务执行时间与系统时间不一致的问题
故障描述
云主机系统用的是自定义镜像,镜像是cenos6.x,自定义镜像里的时区是北京时间,系统启动之后,更改了时区,改成了东七区,系统时间是变过来。由于系统启动之后没有重启过,会导致定时任务的时间还是按东8区的时间来操作,/var/log/message和/var/log/cron日志里的时间也是北京时间.
分析: 由于定时任务crond和日志进程:rsyslog会读取时区变量,由于系统里没有默认的TZ变量,估计是会按默认的时区去记录的。
解决方法:
- 在/etc/profile中添加时区变量:
TZ="Asia/Shanghai;export TZ 时区按你自己要设的时区去设,这里只是测试用北京时间
, - 然后加载变量:
source /etc/profile
- 最后重启:
/etc/init.d/crond restart ; /etc/init.d/rsyslog restart
- 重启之后会生效,打印的日志和定时任务会按系统正常的时间去执行。
原文链接:定时任务执行时间与系统时间不一致的问题,转载请注明来源!