Для своего проекта я создаю WEB-интерфейс для управления QoS в Linux. Я пытаюсь связаться с терминалом с помощью функции shell_exec() PHP. И это работает, если попробовать что-то простое:
shell_exec("ip link show");
Но если попытаться изменить qdisc с помощью (работает в терминале):
shell_exec("sudo tc qdisc replace dev eth0 root pfifo");
Ничего не произошло. Я также не получаю никакого вывода, если пытаюсь выполнить echo shell_exec(...);
Я использую Ubuntu 14.04. Я уже добавил строку в файл sudoers для выполнения команд оболочки без пароля:
#includedir /etc/sudoers.d
%www-data ALL=NOPASSWD: /var/www/html
Может быть, я сделал что-то не так с файлом sudoers или есть еще что-то, что я должен сделать перед запуском команд shell_esec?