首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有运行的Cron作业

没有运行的Cron作业
EN

Server Fault用户
提问于 2009-06-11 14:34:09
回答 4查看 7.7K关注 0票数 1

我可以从CLI运行此命令,在fedora框上没有问题,但不能从Cron运行:

代码语言:javascript
复制
/usr/bin/php /var/www/support_web/api/cron.php

这是cron输出:

命令/usr/bin/php /var/www/support_web/api/cron.php的输出。

77

文件具有执行权限。

Crontab日志:

代码语言:javascript
复制
Jun 11 11:46:20 www crontab[23453]: (root) BEGIN EDIT (root)
Jun 11 11:46:21 www crontab[23453]: (root) REPLACE (root)
Jun 11 11:46:21 www crontab[23453]: (root) END EDIT (root)
Jun 11 11:47:01 www crond[2479]: (*system*) WRONG FILE OWNER (/etc/crontab)
Jun 11 11:47:01 www crond[2479]: (*system*) WRONG FILE OWNER (/etc/cron.d/smolt)
Jun 11 11:47:01 www crond[2479]: (root) RELOAD (cron/root)
EN

回答 4

Server Fault用户

回答已采纳

发布于 2009-06-11 14:49:28

您是在同一个用户的CLI和cron上运行它吗?如果您以普通用户的身份从CLI运行它,从具有根用户的cron运行它,那么根用户可能丢失了cron.php需要的一些环境变量。

您可以尝试从根cron运行,如下所示:

代码语言:javascript
复制
su - userToRunAs -c "/usr/bin/php /var/www/support_web/api/cron.php"
票数 1
EN

Server Fault用户

发布于 2009-06-11 15:59:14

cron文件必须有一个用户/组的根/根(/etc/cron*和/etc/cron*和/etc/cron。{日,小时等}/*必须由root拥有,否则其中的脚本不会被触发。

我不知道/var/spool/cron/$username下的个人crontab。不过,我个人的经验表明,它是根/“用户组”

还有一些权限要求,但我不知道它们是什么。不过,我知道那755很管用。

票数 5
EN

Server Fault用户

发布于 2009-06-11 14:50:37

很难说,但它可能是您在交互式shell中设置的环境变量,但不是由cron设置的。在cron.php中放置一些打印语句,打印出依赖的任何环境变量,这样您就可以查看是否正确设置了它。

如果失败,添加更多的print语句来查看发生了什么。

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/24116

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档