別のサーバーにログインした後、ユーザーをsudo(root)に変更する

別のサーバーにログインした後、ユーザーをsudo(root)に変更する

私は2つのサーバー(Linux 2.6.32-696.el6.x86_64)を持っています。 fe1とfe2だとしましょう。

コマンドを実行する必要があります(サービストムキャットスタート/ストップ)fe1からfe2に変更する必要がありますが、root sudo。私が使用するコマンドSudoルートはsudo su

#!/bin/sh
host=fe2
user=`whoami`
sftp $user@fe2 << EOF
sudo su
service tomcat stop
bye
EOF

別の方法でできますか?

答え1

以下のように、sshを介してfe1からfe2にコマンドを送信できます。

ssh whoami@fe2 'sudo service tomcat start'

sshあるサーバーで、以下;のように別のコマンドで複数のコマンドを実行したい場合' '

ssh whoami@fe2 'sudo -s; service tomcat start; service tomcat status; other_commands; '

ssh上記の順序ですべて実行されます。すべてのstdin要求はコマンドサーバーから取得され、すべての出力stdoutstderror通過します。ssh

関連情報