Я хотел бы создать сценарий 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 ()
или что-то еще?