我刚刚在我的服务器上设置了一个cronjob。我创建了cron.sh
。如果我通过SSH运行此文件./cron.sh
一切正常,它按预期工作。
我在/etc/crontab
文件中添加了一个新行来运行.sh at every 5 minutes
,但它无效。我不明白为什么。
在crontab中添加了行:
*/5 * * * * /var/www/sitename/wp-content/themes/themename/cron.sh >/dev/null 2>&1
它是一个Ubuntu服务器。我想我使用了错误的crontab文件。
我已经设置了777 fron cron.sh。
有什么想法吗?谢谢
答案 0 :(得分:3)
Ubuntu更喜欢使用
$ crontab -e
而不是编辑文件。
这将编辑您登录的特定用户的crontab。
答案 1 :(得分:1)
正如I see所说的那样,我发布了my initial comment作为答案:
您是否尝试过添加/bin/sh
来调用脚本?
*/5 * * * * /bin/sh /var/www/sitename/wp-content/themes/themename/cron.sh ...
答案 2 :(得分:1)
我本周刚刚发现的一些模糊不清的东西,当我手动编辑/etc/crontab
时,你必须在最后有一个换行符,否则显然crond
会忽略该行。这是在一个较旧的FC10盒子上,但是一些快速的Google搜索会显示这是crontab
已知的问题。
答案 3 :(得分:1)
如果您编辑/ etc / crontab,则需要重新启动cond服务 service crond restart
答案 4 :(得分:0)
首先,您可以检查cron是否已安排。
crontab -l
如果你的cron正在那里显示,那么只需用下面的命令重新启动cron服务。
service crond restart
如果cron没有显示,那么你应该跑。
crontab -e
然后添加你的cron。之后再重新启动cron服务。
如果您之前在任何编辑器中手动编辑过cron文件,请立即确认,然后不应出现任何类型的字符类型问题,否则cron将无法正常工作。