SSHを使用してバックグラウンドでスクリプトを実行します。

SSHを使用してバックグラウンドでスクリプトを実行します。

各サーバーで約20分かかるジョブを実行しています。ただし、すべてのサーバーがこのタスクを同時に実行できます。これが私の仕事です:

#cat mylist

server1
server2
...
...

#for i in `mylist`; do ssh root@$i /home/run_command ; done

正常に動作しますが、次のサーバーに移動するには、まず各サーバーの作業を完了する必要があります。

追加してみました&

for i in `mylist`; do ssh root@$i /home/run_command & ; done

違いはありません。私と共有できる情報に感謝します。

ベストアンサー1

次のようにしてsshバックグラウンドに入ることができます。-f

for i in $(cat mylist); do
    ssh -f root@$i /home/run_command
done

Alex Stragiesが指摘したように、これを介して必要に応じてホストのパスワードを入力できますが、リストが長い場合は公開鍵認証を使用してください。

おすすめ記事