如果在crontab -e 退出时无法成功保存

2022-04-09 19:19 来源:未知 作者:mas 责编:mas

今天登录服务器,发现之前所有的计划任务都不见了

然后尝试添加

[root@localhost ~]# crontab -l
[root@localhost ~]# crontab -e
crontab: installing new crontab
crontab: error renaming /var/spool/cron/#tmp.localhost.localdomain.XXXXErmAqI to /var/spool/cron/root
rename: Is a directory
crontab: edits left in /tmp/crontab.EBVhq2
[root@localhost ~]# crontab -l
[root@localhost ~]# service crond restart
Redirecting to /bin/systemctl restart crond.service
[root@localhost ~]# crontab -l

发现没有添加进去

[root@localhost ~]# cd /var/spool/cron
[root@localhost cron]# ls
root

发现root是一个目录,继续查看发现他是空的

删除root目录,重新添加计划任务

[root@localhost ~]# crontab -e
crontab: installing new crontab
[root@localhost ~]# service crond restart
Redirecting to /bin/systemctl restart crond.service
[root@localhost ~]# crontab -l
* 2 * * * /home/crontask/mysqlBackup.sh

添加成功

另附网卡关于计划任务被清空的一个解释

先简单描述一下事情经过,有业务部门反映今日数据没有更新,查看日志发现使用crontab调度的每小时执行任务最后执行时间是昨天12点,查看crontab -l发现所有任务都没了。
排查过程:
1.通过此任务日志可以定位到清空操作在12点到13点之间。
2.通过history发现11点有个异常命令crontab - l(正常是crontab -l),我试了一下卡住了什么都不显示,也没有清空任务。
3.通过搜索引擎得知,使用远程连接工具使用crontab时,如果遇到网络波动等情况意外中止,就会清空所有任务。
4.执行crontab - l(正常是crontab -l),然后关闭Xshell,再查看发现确实被清空了。
真相只有一个:
某位同事首先使用了错误的命令导致卡住,而他没有管,去吃饭或者午休了,12点到13点之间电脑自动休眠或关机导致Xshell意外中止,进而导致Crontab所有计划任务被清空。

 

如果在crontab -e 退出时无法保存


今天最小化安装完centos7.2后,发现在退出crontable 时无法保存,提示出下:

[root@localhost ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
“/tmp/crontab.5wI27z”:1: bad minute
errors in crontab file, can’t install.
Do you want to retry the same edit?
Enter Y or N

解决方案:

echo export EDITOR=/usr/bin/vi >> ~/.bashrc

即可解决。

【版权声明】本站部分内容来源于互联网,本站不拥有所有权,如果发现本站有侵权的内容,欢迎发送邮件至 benumon@163.com 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

分享:

更多文章

相关文章

关键词:

一生受益-思韵闪耀-专业IT技术社区 - 爱编程,爱源码,爱技术,一生受益。

powerby 一生受益-思韵闪耀    豫ICP备13002912号-2