Я не могу запустить скрипт bash, используя sudo с функцией shell_exec () в PHP. Я получаю сообщение об ошибке:
Извините, пользователь apache не имеет права выполнять ‘/ bin / bash /var/www/html/private/createFTP.sh’ от имени root на test.server.com.
PHP:
shell_exec('sudo bash /var/www/html/private/createFTP.sh 2>&1');
Visudo:
apache ALL=NOPASSWD: /var/www/html/private/createFTP.sh
Если ваш веб-сервер находится в chroot-тюрьме, то это вызовет этот тип ошибки. Если вы используете сервер chroot, убедитесь, что вы зеркалируете через свой файл / etc / sudoers и в файловую систему jail, и при настройке файла sudoers измените структуру каталога chroot, а ваш скрипт будет перемещен, как только вы перейдете в chroot. Также убедитесь, что у вас есть библиотеки sudo и исполняемый файл в файловой системе jail.
Других решений пока нет …