私はtmuxセッションを作成し、php経由でいくつかの他のコマンドを実行しようとしています。php execコマンドは実行されません
私はウェブからスクリプトを実行するとコマンドを実行しませんが、 "php test.php"を使ってスクリプトを実行すると動作します。
私はcmdsをsudoとして実行し、www-dataのsudoパスをオフにしようとしました。しかし、コマンドは実行されません。
スクリプト:
$array_output = array();
$cmd = "sudo tmux new-session -s Server-17 -d ENTER 2>&1";
$output = shell_exec($cmd);
array_push($array_output, $output);
$cmd = "sudo tmux send -t Server-17 'cd /home/Minecraft/Servers/1/17/' ENTER 2>&1";
$output = shell_exec($cmd);
array_push($array_output, $output);
$cmd = "sudo tmux send -t Server-17 'chmod +x start_script.sh' ENTER 2>&1";
$output = shell_exec($cmd);
array_push($array_output, $output);
$cmd = "sudo tmux send -t Server-17 'sh start_script.sh' ENTER 2>&1";
$output = shell_exec($cmd);
array_push($array_output, $output);
var_dump($array_output);
が出力:撮影
array (size=4)
0 => null
1 => string 'failed to connect to server
' (length=28)
2 => string 'failed to connect to server
' (length=28)
3 => string 'failed to connect to server
' (length=28)
ユーザーが実行する権限を持っていますか?アクセスを許可する必要があるのは、おそらくApacheユーザーです。 – Michael
これは、私がアクセス権を持っているので、www-データのユーザがパスワードなしでsudoを使うためのアクセスを受けています。 –