私は処刑する同期ターゲットサーバーのオプションは--checksum
次のとおりです。
rsync -av --bwlimit=800000 --delete --checksum /mnt/disks/SMB_SRC/ /mnt/user/dst
ただし、ソースサーバーをSMB共有としてマウントすると、チェックサム計算のためにすべてのファイルがターゲットサーバーに完全に送信されます。すべてのファイル転送を防ぐために、ソースサーバーでソースファイルのチェックサム計算を有効にするには、どのプロトコルが必要ですか? rsyncデーモン(rsync://)のみをサポートしていますか、それとも他のプロトコルもサポートしていますか?
答え1
ソースとターゲットの両方が「ローカル」パスである場合、チェックサムを計算するにはすでに両方を読む必要があります。チェックサムを要求するSMB呼び出しがないため、I / Oを減らす方法はありません。
I/O を防ぐには、転送の片側がリモートである必要があります。反対側にデーモンがある必要はありませんが、標準のSSH接続が機能します。
$ rsync /localpath /otherlocalpath # Both sides read. No checksum comparison
$ rsync /localpath server:/remotepath # Destination remote
$ rsync server:/remotepath /localpath # Source remote