私はシェルの世界に初めてアクセスし、300を超えるサーバーからファイルをインポートする簡単なスクリプトを書いています。以下のように作成すると、一度に300個のサーバーにすべてログインしてファイルを抽出するか、1つずつ抽出するようになります。また、ユーザーにパスワードのないログインを提供することもできます。$ usernameでユーザーに言及するか、別のスクリプトを作成する必要があります。
#!/bin/bash
cd /backup
for server in $(cat server.txt)
do
scp -r $username@$server:/tmp/backup/*.txt* .
done
ベストアンサー1
このように書いたら、一つずつ見てください。
parallel
並行して実行するには、見てください(パッケージをインストールする必要があるかもしれません)。また、一度に300のジョブをすべて実行せずに、同時実行数を制限してください。それ以外の場合は、全体の操作が遅くなります。
パスワードなしでログインできます。 SSHキーペアを作成し、それを実行するマシンに秘密キーを入力し、複製するすべての300マシンに公開scp
キーを入力する必要があります。~/.ssh/authorized_keys
キーが正しい位置にある場合、スクリプトを変更する必要はありません。