まず、この場合のファイルの数が大きな要因になります。平均サイズはそれぞれ3MBです。おそらく、OPの場合、速度に影響を与えるioボトルネックがあります。もっとここで -それはかなりドライな読書ですが、カバー写真は価値があります。
だから、rsyncを使用して空のディレクトリにコピーしますか?速度を上げるいくつかの方法を次に示します。
- -zなし-OPのように-zを絶対に使用しないでください。
- --no-compressはスピードアップするかもしれません。これが最大の影響を与える可能性があります...私のテストは13,000ファイル、合計サイズ200MB、rsync 3.1.3の使用でした。同じ内部SSDドライブの別のパーティションに同期しました。--no-compressを使用すると、18 MBpsを取得し、それなしでは15 MBpsを取得します。ところで、cpは16 MBpsを取得します。しかし、それははるかに小さい平均ファイルサイズです。また、-no-compressのドキュメントが見つかりません。stackexchange.comのこの投稿からそれについて学びました。
- -W ファイル全体をコピーします -違いを比較したくない場合は常にこれを使用します。rsyncのポイントは違いを比較し、変更のみを更新することであることを気にしないでください。
- -Sでスパースファイルを適切に処理します - スパースファイルがなくても害はありません。
- --exclude-fromまたは不要なファイルを除外するのに似たものは時間を短縮しますが、転送速度は向上しません。
- それはだ可能性あなたは、このようなファイルに出力を送信する場合
rsync -a /source /destination >/somewhere/rsync.out 2>/somewhere/rsync.err
、エラーメッセージを参照>第一>は基本的にあなたが正常に表示されるすべてのものを使用してファイルを印刷し、2 - 。
- 最後に、転送のさまざまな部分でrsyncの複数のインスタンスを実行すると、大きな助けになる可能性があります。
私のコマンドは次のようになります:
rsync -avAXEWSlHh /source /destination --no-compress --info=progress2 --dry-run
すべてがうまく見えたら、「-dry-run」を削除して手放します。A、X、およびEは、-aでカバーされない拡張属性および許可をカバーし、lはソフトリンク用、Hはハードリンク用、hは人間が読めるもの用です。
USBドライブ、同じドライブ、またはネットワーク経由で既に同期されたディレクトリを更新するには、転送速度を最大化するためにすべて異なるrsyncコマンドが必要です。
ボーナス -これはrsyncのマニュアルページです。ハードドライブの速度をテストする場合は、bonnie ++が適切なオプションであり、ネットワーク速度についてはiperfを試してください。
*投稿はほぼ10年前ですが、検索エンジンは確かに気に入っており、私はそれを見続けています。これは良い質問です。「rsyncを高速化する方法」に対する一番の答えは「代わりにcpを使用する」べきではないと思います。