授予PHP的sudo acsess

我试图授予PHPsudo访问(自动共享安装)。 我已经成功完成了在我的一个系统上授予php sudo访问权限,通过将daemond添加到sudo列表中

su --login -c 'visudo' 

所以现在它包含了daemond:

 daemon ALL=(ALL) NOPASSWD: ALL 

但是当我尝试运行一个简单的PHP脚本:

 <?php echo "\nfirst: "; echo shell_exec("whoami"); echo "\nsecond: "; echo shell_exec("sudo ls"); ?> 

我得到结果:

 first: daemon second: 

这是任何时候我在我们shell_exec sudo命令没有任何返回或兴奋。 我如何授予PHP的sudo访问权限。

检查您的networking服务器错误日志…我敢打赌,你正在得到一个错误,如:

 # tail -1 /var/log/httpd/error_log sudo: sorry, you must have a tty to run sudo 

如果是这种情况,请尝试修改sudoers文件并更改/删除requiretty行:

 # grep requiretty /etc/sudoers Defaults requiretty 

另一方面,如果您只是试图自动安装和共享,autofs / automount可能是值得研究的。