複数のリモートサーバー上でローカルスクリプトをルートとして実行しようとしています。私はそれらに根をsuする必要はありませんが、sudoを使ってrootコマンドを実行するだけです。リモートサーバー上でローカルスクリプトをルートとして実行
for host in $(cat hosts_list); do ssh -tt $host "echo mypassword | sudo bash -s" < ./myscript.sh
をそしてmyscript.shでのようなものがある:これまでのところ私が試した
echo "test test123" >> /etc/tests
exit 0
しかし、それは動作していないように見えるし、ファイルを変更することはありません。 rootとしてこのスクリプトを実行し、各ホストに個別にパスワードを入力することなく適切な方法は何ですか?
私は、これは私は、これは純粋にシェルスクリプトの問題であると考えていServerFaultの –
に良くフィットすると思います。 – JavaRed
'sudo echo" PermitRootLogin yes ">>/etc/ssh/sshd_config'と' sudo service ssh restart'を試してください – Arash