linux conrtab BUG !!线上定时任务被意外清空来龙去脉及原因。

目录

一 事件概述

二 问题排查

三 发现问题

四 复原故障原因

五 总结

一 事件概述

又是令人犯困的周一早晨,周末zabbix网点一些误告警问题昨晚又出现了,今天又得开始排查原因,其中有一个怀疑是跟服务器的定时任务有关,于是我开始用“远程工具”查询一下定时任务,于是 一波未平一波又起~

第一次查的时候 敲了 crontab - l   (因为是在zabbix中一个check上面远程过去,敲完一直转圈圈,心里开始有种不详的预感。)

加上又是临近中午,敲完,我退出后,继续重新进去查询一会,这会很快,马上反馈给我一个空值,奇怪之前还能查的,怎么这会将查询不了了,而且确定敲的是-l,而不是什么-r删除,有点懵逼。

于是我想到还有另一台zabbix check服务器,我登录上去看,刚巧上面有个监控项就是监控该服务器的定时任务的,看了一下,之前也都还是正常取值的,这个11:30后就取不到值了呢?不会怎么巧吧?

二 问题排查

 又在check上面测试执行了几次,还是没有反馈值,令人不解,马上就到了干饭时间,就先去干饭了。

下午回来后,为了确定是不是敲错命令了,又特意去查看一下history记录,结果没查到命令(这是因为我用check查的原因),因为这个小插曲,我又开始怀疑是check的问题,开始各种检查zabbix 的check,发现查询其它各种命令又是正常的,令人不解。

时间一点点过去,又上网去查验证定时任务有没有存在的方法,发现定时任务下有个用户文件,专门记录定时任务的,命令如下

tail -f /var/log/cron

但我用tail去查询后,确实查到目录下有我在用的这root用户,不过当打开里面东西时候却是一片空白。

 此时已经可以确定定时任务 是由于某种原因被全清空了。

三 发现问题

还好有之前的定时任务记录,区别原封不动加上去后,开始查找原因。

开始在网上查找有关crontab 可能被清空的原因,看到一篇文章说

“使用远程连接Q工具使用crontab时,如果遇到网络波动等情况意外中止,就会清空所有任务。”

因为我用的check也是一种远程的ssh方式,加上好像之前敲完里面一直转圈圈就被我叉掉了,估计就是这个原因了。

四 复原故障原因

打开模拟器,开始进行测试,果然如此,使用远程,敲命令的时候如果多了空格,就会导致清空定时任务!!!

建议使用远程工具去查询定时任务的小伙伴一定要小心,尽不用直接用crontab - l去查询,可以查询/var/log/cron 这种方式去查看定时任务,以防万一。

五 总结

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值