ネットワーク経由で大容量ファイルをコピーする方法

ネットワーク経由で大容量ファイルをコピーする方法

ネットワーク経由で大容量ファイルをコピーする必要がありますが、どのコマンドラインを使用するのかわかりません。私はrsyncを使ってきましたが、最初にファイルを圧縮できると思いました。

答え1

rsyncoptionを指定すると、圧縮はすでに提供されます-z。追加のオーバーヘッドのみが発生するため、すでに圧縮されているファイルまたはバイナリにこのオプションを適用しないでください。

SSHプロトコル(デフォルト)でrsyncを使用し、CPUリソースが制限されていてセキュリティが問題にならない場合は、-e ssh -c arcfourより安価な暗号化アルゴリズム(RC4)を指定してみることもできます。しかし、最新のCPUでは、これは大きな違いはありません。

使用できる他の興味深い主張は次のとおりです。

  • -vPクールな進行状況バーと中断時に部分的に転送されたファイルを維持するため、次回実行時に部分ファイルから再開できます。rsync
  • -a権限や変更時間など、ほとんどの(すべてではない)ファイルメタデータを保存します。

答え2

ファイルの圧縮や転送に問題があるのか​​、一般的な質問があるのか​​わかりません。後者を選びます。

フォルダに複数のファイルがある場合は、そのファイルをアーカイブ(.tar)ファイルに圧縮できます。tar -cvf myfile.tar myfolder

その後、lzma:などの本当に良いコンプレッサーを使用してファイルを圧縮できますlzma myfile.tar-z(gzip)、-j(bzip2)、またはオプションを使用してtarを圧縮するように指示することもできます--lzma。この場合、単一のコマンドを実行します。例: tar --lzma -cvf myfile.tar.lzma myfolder

rsyncその後、ファイルを使用またはコピーしscp、解凍し(lzma -d myfile.tar.lzmatar -xvf myfile.tar、ターゲットシステムで一度解凍することができます()。単一コマンドを使用する場合、抽出用の単一コマンドは次のとおりですtar --lzma -xvf myfile.tar.lzma

また、この-zオプションを使用すると、事前に単一ファイルのアーカイブを作成することを心配することなく、rsyncに圧縮を指示できます。

関連情報