我尝试设置crontab以按设定的时间间隔执行。 crontab作业是作为我在Apache上运行的PHP-Slim应用程序的一部分而设置的。出于某种原因,它只是没有将作业添加到crontab,所以当我运行命令时:
crontab -u daemon -l
它说守护进程没有crontab' (守护程序是默认的Apache帐户)。我确实设法使用另一个帐户手动添加cronjob(并且执行时没有其他问题),因此很可能是权限问题。解决这个问题的最佳方法是什么,而不是像chmod 777那样(它将是一个生产服务器,所以我需要小心设置权限并记录它们)?
答案 0 :(得分:1)
管理以便在发布后找到答案。
我在日志文件中查找了cron:
cat /var/log/cron
很多(daemon) AUTH (crontab command not allowed)
错误消息。一些进一步的谷歌搜索引导我查看不存在的/etc/cron/allow
,但是/etc/cron.deny
,并且守护程序帐户在那里列出。问题解决了。
答案 1 :(得分:0)
默认情况下,我们不允许用户daemon
运行crontab作业。如果您希望该用户运行crontab作业,则需要修改/etc/cron.deny
并从中删除daemon
用户。
希望它有所帮助。