あるホストから別のホストに大量のデータを転送するためにrsyncを使用しています。ソースパスとターゲットパスはnfsを介してマウントされます。
--bwlimit を使用して帯域幅を制限したいのですが、-z パラメータを使用すると --bwlimit が機能しないようです。
このように:
$ rsync --progress -lptgoD -z -HXSR --bwlimit=1024 --numeric-ids -r /source_dir/ /dest_dir/
sending incremental file list
./
xxx/
xxx/file1
2,943,688,704 100% 7.87MB/s 0:05:56(xfr#1, to-chk=1/4)
xxx/file2
2.939,400,192 100% 7.85MB/s 0:05:56(xfr#2, to-chk=0/4)
sent 720,566,933bytes received 65bytes 1,011,322,10 bytes/sec
total size is 5,883,088,896 speedup is 8.16
データ転送時にツールを使用して、約5 MB / s〜10 MB / sのネットワーク帯域幅を監視しますiotop
。nfsiostat-systat -mth 2
では、ここで何が間違っていますか?
rsyncバージョン3.1.2、私の不器用な英語力を許してくれてありがとう。
答え1
ネットワーク転送を行わない限り、および--bwlimit
(-z
)オプションは無視されます。--compress
あなたの場合はrsync
ローカル転送を行っています。ソースまたはターゲットがマウントされたネットワークドライブであっても、それはローカルファイルシステムの一部と見なされるため、ローカルと見なされます。
ローカル間転送のもう1つの副作用は、ファイル全体がrsync
転送またはスキップされることです。変更されたブロックのみがネットワークコピーのように送信されるとは見なされません。実際にはただ減ってcp