我有一个 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 正在作为用户 asterisk 及其 Centos 6 运行。我现在被卡住了,所以伸出援手。
谢谢
最佳答案
您的 asterisk 帐户没有 shell 登录。 sudo 用户必须有 shell 登录。在/etc/passwd 中检查它。如果没有登录,则表示无法访问 shell。
关于linux - 如何通过php脚本执行终端命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36179839/