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
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
相关文章
Ubuntu20的tzselect设置时间失效的问题,树莓派服务器(推荐)
这篇文章主要介绍了Ubuntu20的tzselect设置时间失效的问题,树莓派服务器,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-05-05Linux C++ 使用condition实现阻塞队列的方法
下面小编就为大家带来一篇Linux C++ 使用condition实现阻塞队列的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2017-01-01linux注释crontab文件及crontab执行sh的坑记录
这篇文章主要介绍了linux注释crontab文件及crontab执行sh的坑记录,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-04-04
最新评论