rsync を使用して Linux サーバーから Windows PC にバックアップを取得するにはどうすればよいですか?

rsync を使用して Linux サーバーから Windows PC にバックアップを取得するにはどうすればよいですか?

現在、私は sftp を使用して、Web ホストからデスクトップ コンピュータに夜間のバックアップ (.tar.gz) をダウンロードしています。帯域幅 (および時間) を最小限に抑えるために、rsync に切り替えたいと思っています。PC に cygwin がインストールされていますが、あまり使用していません。ssh (PuTTY) 経由で Web ホストにシェル アクセスしています。

ソース ディレクトリが myserver.com:/home/username/backups/ であるとします。そこからすべての .tar.gz ファイルを取得し、ローカルの C:\Backups\ に保存します。

答え1

*nixボックスの組み込みrsyncを使用し、デルタコピーWin32 ボックス上。

答え2

私はこれを cygwin の rsync と ssh で動作させることができました。最終的に実行したコマンドは次のとおりです。

C:\cygwin\bin\rsync.exe -vcr -e "ssh -l username -i /cygdrive/C/Backups/sshkey" "myserver.com:/home/username/backups/" "/cygdrive/C/Backups/rsync/"

途中でいくつか問題が発生しました: C:\cygwin\bin\ を Windows PATH に追加しました。これが厳密に必要だったかどうかはわかりませんが、役に立ちました。

クリス・Sリンクパスワードを使用せずに ssh 接続できるようにするために必要なキー ペアを作成します。

また、サーバー上に新しく作成された .ssh ディレクトリとファイルの権限を設定する必要もありました...

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys/

ああ、cygwin 内でローカルに ~/.ssh を手動で作成する必要がありました。

関連情報