作者:helloboris | 来源:互联网 | 2023-05-17 15:24
记得很久以前给一个服务器加了个cron用来定时备份mysql来着,今天偶然翻看卷宗,OMG!发现此cron并未执行。。就是说这么长时间都没有mysql备份,好惊悚。。试着执行了一下bash脚本,发现可
记得很久以前给一个服务器加了个cron用来定时备份mysql来着,今天偶然翻看卷宗,OMG!发现此cron并未执行。。就是说这么长时间都没有mysql备份,好惊悚。。
试着执行了一下bash脚本,发现可以正常执行的,那么猜测问题就在crontab上了。可是写在同一个cron里的另一条命令却按计划执行了,有点诡异哦。
用google找了下,恩,让我找到原因了:
cron requires that each entry in a crontab end in a newline character. If the last entry in a crontab is missing the newline, cron will consider the crontab (at least partially) broken and refuse to install it.
这是在说,每条crontab任务要以空白行字符结尾,否则cron将认为计划(至少是部分的)被broken并拒绝建立该任务。
所以问题就很好解决了,最后回车换行就好了。
感谢:http://www.im87.cn/blog/261