我无法在PHP中使用带有shell_exec()函数的sudo运行bash脚本。我收到一条错误消息:
抱歉,用户apache不能以root用户身份在test.server.com上执行'/ bin / bash /var/www/html/private/createFTP.sh'。
PHP:
shell_exec('sudo bash /var/www/html/private/createFTP.sh 2>&1');
Visudo:
apache ALL=NOPASSWD: /var/www/html/private/createFTP.sh
答案 0 :(得分:0)
如果您的Web服务器在chroot监狱中,则将导致此类错误。如果您正在运行chroot服务器,请确保也将/ etc / sudoers文件镜像到jail文件系统,并在设置sudoers文件时调整chroot目录结构,并且一旦进入chroot,脚本也会移动。还要检查jail文件系统中是否也有sudo库和可执行文件。