Gnuパラレルrsyncが無期限にハングする

Gnuパラレルrsyncが無期限にハングする

明確にするために、gnu parallel設定で次の正確なコマンドを実行しています(変数が変更されました)。

/usr/bin/parallel -q -j20 
    rsync --recursive -av -e ssh -oCompression=no -x -T 
    -oUserKnownHostsFile=/dev/null -oConnectTimeout=15 
    -i ssh_key -l some_username --chmod=Dugo+rwx,Fugo+rw 
    --files-from {} /some/base/dir somehostame:/some/other/dir

これは、20のワーカープロセスにわたって約50のファイル(rsyncを含むファイル/ディレクトリ名のリスト)を消費しますgnu parallel。昨夜、上記のタスクを実行し、仕事に戻ったときにまだ1つのrsyncタスクがかかっていることがわかりました。

rsync --recursive -av -e ssh -oCompression=no -x -T -
    oUserKnownHostsFile=/dev/null -oConnectTimeout=15 
    -i ssh-beta-secdata-20180515t213639 -l diskmaker 
    --chmod=Dugo+rwx,Fugo+rw 
    --files-from ./some_filelist /some/base/dir somehostname:/some/other/dir

確かに言えば、some_filelistこれは私がrsyncしたいディレクトリのリストです。

chrootルートディレクトリ(「d」など)のファイルを/some/base/dirリモートディレクトリにインポートしますsomehostname:/some/other/dir

したがって、約500の雇用を利用できますparallel。各ファイルのリストを分析しましたが、./some_filelistrsync dryrunの標準200ファイルには特別なものはありませんでした。

この問題の診断を受けた人はいますか?私はこれがどのように起こったのか分からない。必要に応じてより多くのコンテンツを投稿できます。

ベストアンサー1

Ole Tangeが提案したように、1つのパラメータ(あなたのディレクトリ名)のみを使用してrsyncを試みると、rsyncはSSHパスワードの入力を求められます。実験で同じ問題に直面したとき、パラレルはsshパスワードを求めるメッセージを表示しませんが、バックグラウンドではパスワードが必要であることがわかりました。

答えの1つを適用してください。このスーパーユーザーの質問私の問題を解決しました。具体的には次のようになります。

1) 公開鍵を生成します。

SSHキージェネレータ

2) 対応するキーを「somehostname」にコピーします。

ssh-copy-id -i ~/.ssh/id_rsa.pub user@somehostname または somehostname の IP アドレス

それはすべてです。この手順を完了すると、2 台のコンピュータ間の SSH 接続に SSH パスワードは必要ありません。私の場合、この設定ではコマンドが中断されました。

おすすめ記事