crontab执行时间与系统时间不一致问题解决

在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。

cron的配置文件称为“crontab”,是“cron table”的简写。

cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业。

  • service crond start //启动服务
  • service crond stop //关闭服务
  • service crond restart //重启服务
  • service crond reload //重新载入配置
  • service crond status //查看服务状态

发现问题

事情是这样的在自己的服务上有一条如下crontab

10 0 * * * root echo 'xxx' >> zzz

熟悉的人都知道是 晚上00:10执行,把xxx输出到zzz文件

可是问题来了 这条crontab不在00:10执行!而是在中午12:10执行。

crontab 执行时间和系统时间不一致!!!!

我记得服务器更改过时区现在也是 CST时区 没理由不执行啊!

试着google下crontab 时区,还真搜到 几个类似的例子

原来 修改过时间后必须手动重启crontab

/etc/init.d/crond restart

必须重启crontab 重启服务器是没有用的,我修改时区后重启过服务器 都是没有用的,必须重启crontab!

还有一种情况的 时区分两个 一个是 timezone 还有个是localtime,按照下面命令即可解决

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
service crond restart
赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » crontab执行时间与系统时间不一致问题解决

登录

找回密码

注册