【发布时间】:2016-08-06 16:33:18
【问题描述】:
$lol = system("sudo gpg --clearsign asd.txt;");
是因为我需要 gpg 的密码吗?
sudoers:
root ALL=(ALL) NOPASSWD:ALL
apache ALL=(ALL) NOPASSWD:ALL
www-data ALL=(ALL) NOPASSWD:ALL
【问题讨论】:
-
欢迎使用 Stack Overflow。请始终提供您在运行您发布的代码时遇到的错误消息,因为它总是特定于您的系统。
-
命令返回值为2。使用CENTOS
-
我将命令更改为:$lol = shell_exec("echo $passphrase | sudo gpg --passphrase-fd 0 --clearsign asd.txt");
-
即使 --passphrase-fd 0 假设将密码放在前面也不起作用
-
我使用 visudo 将 apache 更改为 NOPASSSWD:ALL