Rsyncは変更された部分ではなくすべてを転送します

Rsyncは変更された部分ではなくすべてを転送します

rsync コマンドのさまざまな組み合わせを試してみましたが、どのプラットフォームで使用しても、どのソースからどの宛先に使用しても、まったく同じかどうかに関係なく、常にすべてが転送されます。その秘密は何でしょうか? 私が最後に使用したコマンドは、rsync -avz --progress source:somepath/specficfolder/* destination:otherpath/spceficfolder/ です。

変更されたファイルのみを転送するにはどうすればよいでしょうか?

アップデート: blackhats の回答のおかげで、正しい方向を示してくれたので、ファイルサイズをチェックしてファイルを転送する必要があるかどうかだけを確認する --filesize オプションを使用する方がはるかに良いオプションであることがわかりました。Checksome は機能しましたが、私のファイルのほとんどが大きな mp3 ファイルであるため、非常に遅くなりました。ファイルがテキスト ファイル、ソース コード、およびその他のそのような文字データである場合は良いオプションだと思いますが、変更されていない大きなメディア ファイルは、filesize オプションを使用して転送した方がよいでしょう。

答え1

まず、ファイルが本当に変更されていないことを再確認します。変更されていない場合は、--checksum オプションを使用してみてください。このオプションを使用しない場合、rsync はファイル サイズと変更時間を使用して、どのファイルが変更されたかを判断します。

おそらく変更時間が間違っているのでしょう。

それでも問題が解決しない場合は、さらに -v を実行してより詳細な出力を取得し、それを注意深く読んでください。

関連情報