【发布时间】:2016-11-29 08:30:08
【问题描述】:
我有一个带有文件删除命令的 sh 文件。
我是这样从 php 运行它的:
shell_exec("sudo -n ./truncatefiles.sh 2>&1");
如果我从浏览器打开 PHP 文件,那可以正常工作,但不能从计划的 cron 选项卡中工作。
PHP 用户:www-data
如果我从 cron 运行 whoiami,返回相同:www-data
我将此添加到我的 visudo 中:
www-data ALL=(ALL) NOPASSWD: /www/sites/..../importscript/truncatefiles.sh
此 sh 文件的 Shell exec 返回(来自 cron):
sudo:抱歉,运行 sudo 需要密码
为什么在 cron 中以不同的方式工作?
我应该怎么做才能让它工作?
【问题讨论】:
-
这是一个 apache 网络服务器,对吧?
-
是的,它的 2.2.16 (Debian)