为什么crontab定时任务不能正常执行?

8 篇文章 0 订阅
4 篇文章 0 订阅

今天遇到一个系统时间偏量达到阈值,zabbix平台告警时间偏移问题,排查后发现是系统配置在crontab定时任务的定时同步服务器时间的任务一直没有执行成功。

1.问题是这样今天一台应用服务器告时间偏移告警,登录服务器查看时区一切正常,就是时间比北京时间慢了2分钟,

2.发现问题后首先为了不影响业务第一时间手动同步了一下时间,ntpdate x.x.x.x

3.开始排查为什么时间会慢了呢,了解了一下我这个应用对时间要求不是特别敏感所以,在同步时间这边没有使用ntpd 服务,使用的是 ntpdate + crontab 方式来完成同步的

4.起初查看crontab日志发现定时任务是按时执行的;
在这里插入图片描述
5.经过分析认为是定时任务执行了,但是ntpdate没有执行,那么这是为什么呢?
答:来仔细查看后发行我的crontab 写的是 * * 1 * * ntpdate x.x.x.x 这个xxxx表示IP地址,
然后我默默的改成了 * * 1 * * /usr/sbin/ntpdate x.x.x.x 随即观察发现执行成功到此问题解决。

6.总结经验,那么这是为什么呢?
通过查找相关文献了解到,linux crontab 加载的环境变量,和我们正常登录shell 时加载的环境变量是不同的,也就是说是少的,那么解决这个问题其实就可以用两种方式来解决了,一,加环境变量,二,使用绝对路径。
还有就是,以后写脚本时要想放到crontab自动执行,知道应该怎么做了吧

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值