我在linux平台上的服务器上设置了一些crontab。在那两天之前,所有的cron都在运行。我不知道crontab发生了什么,他们现在不工作了。
所有的cron之前都在运行,之后我添加了一个新的crontab,但它们没有运行。这可能是问题所在,也可能是其他问题。
我已经检查了其他权限,但可以。
我添加的新cron看起来像这样:
*/15 * * * * php myproject/sendmail.php
30 5 * * * php myproject/sendmailOnDiscount.php
* */1 * * * php myproject/sendInvitaion.php
最后一个添加了,在此之前,另一个运行良好。添加crontab sendInvitation.php后,crontab已停止工作。
有人能告诉我为什么crontab现在不起作用吗。(所有crontab都已停止工作)
也许它是关闭的,你可以用这个命令打开它
service crond start
这个问题主要是由于脚本文件权限和脚本文件所有权引起的。我也面临同样的问题。我发现我的脚本所有者不是超级用户,例如root。
因此,您必须将您的scrip的权限和所有权设置为超级用户。在下面查找。
首先,将您的crontab编辑为超级用户。(在RHEL中,如下所示)
[abc@host] crontab -e
并保存crontab:wq!
现在设置脚本的权限
[abc@host] chmod +x script.sh
[abc@host] chown root:root script.sh
现在重新启动您的crontab。(在RHEL中,如下所示)
[abc@host] /etc/init.d/crond restart