Я хотел бы создать php-скрипт для выполнения команды оболочки и возврата ее вывода. Сервер требует закрытый ключ. Когда я впервые решил проверить это, я создал это:
<?php
$command = "ls";
$output = shell_exec($command);
echo "<pre>$output</pre>";
?>
Это сработало просто отлично. Но когда я изменил $command
на команду, которую очень хотел запустить:
$command = "/etc/init.d/mycontrollerd status /etc/mycontrollerconfig";
это дало мне этот вывод:
You need root privileges to run this script
Я предполагаю, что мне нужно использовать sudo
. Конечно, для этого потребуется разместить файл pem где-нибудь на сервере. Предполагая, что я это сделаю, каким именно должно быть $command
? Должен ли я использовать shell_exec()
, exec()
, system()
или что-то еще?