如何通过php脚本执行终端命令

时间:2016-03-16 09:09:19

标签: linux php sudo

我有一个php脚本,我需要运行linux终端命令。我的问题是我需要将其作为sudo运行,但它不起作用。我已完成VISUDO并添加/禁用如下:

asterisk ALL=NOPASSWD: /usr/sbin/cmd.php
Defaults!/usr/sbin/cmd.php !requiretty
#Defaults    requiretty
#Defaults   !visiblepw

但我在apache日志中遇到此错误" sudo:没有tty存在且没有指定askpass程序"。仅供参考,Apache以用户星号及其Centos 6运行。我现在已经陷入困境,因此无法联系。

由于

2 个答案:

答案 0 :(得分:0)

您的星号帐户没有shell登录。 sudo用户必须有shell登录。在/ etc / passwd中检查它。如果是nologin,则表示无法访问shell。

答案 1 :(得分:0)

您需要检查星号API,它会调用AMI(Asterisk管理界面) https://github.com/marcelog/PAMI