リモートホスト間でrsyncを実行する必要があります(後の理由)。これはrsyncでサポートされていません(マニュアルページを参照)。しかし、私はsshトンネルを使って可能でなければならないと思います。これまでのところ動作させることができず、私は何か間違っていると思う。次のスニペットを見て:2つのリモート間のRsync
ssh -R localhost:50000:remotesource:22 [email protected] -f -N
sleep 5 #To wait for the tunnel to establish
ssh [email protected] rsync -e "ssh -p 50000" --progress --append-verify [email protected]:~/sourcefiles ~/destdir'
これは基本的にrsyncの内部SSHの認証中にハングアップします。ちょうどそれをテストするために、私はremotedestinationに接続し、トンネル経由でリモートソースするためにsshしようとしたと働いた!ここで忘れていることはrsyncのやり方は何ですか?
なぜ私はこれをしたいですか?一般的な好奇心にもかかわらず、事は、リモートソースは私がデータをプッシュできないだけのコンピュータであり、リモートフェネーションは唯一の共有アカウントを持つということです。接続の問題が頻繁に発生するため、エラーが発生した場合にrsyncを再起動するスクリプトを作成したかったのです。このためには、鍵ファイル(sshpassもインストールされていない)を介して認証する必要があります。しかし、私は確かに私の秘密鍵を共有アカウントのホームディレクトリに保存しません。したがって、私はローカルPCを介して認証が必要です。
誰かが私のエラーを指摘してくれることを願っています。私はそれを見ません:-)ありがとう!
私はそれが残念です。私はそれについて考えてみましょう。データの量に関して、私たちは数TBを話しています。そのため、接続が失われた後にrsyncを再開する必要があります。 – Alex
私の個人的な解決策は、入力されたパスワードを入力するためのスクリプトを書くことです。 – ams
sshpassはインストールされていませんので、どうすればよいですか? – Alex