大容量の小さなファイル(合計1TB)を圧縮して転送するときのメモリの問題

大容量の小さなファイル(合計1TB)を圧縮して転送するときのメモリの問題

約1TBのストレージ容量を占める500万のファイルがあります。このファイルを第三者に転送する必要があります。

最良のアプローチは何ですか?サイズを減らすために.tar.gzを試しましたが、コンピュータに8 GBのRAMがあるにもかかわらず、「システムメモリ不足」エラーが発生しました。

通常のメールでファイルを送信するのが最善の解決策ですか?

ベストアンサー1

コメントに記載されている追加情報は、OPがGUIメソッドを使用してファイルを生成していることを示します.tar.gz

GUIソフトウェアは、同じコマンドラインと比較してより多くの量を含むか、またはいくつかの「追加」機能(たとえば、進行状況バー)のために追加の不要なタスクを実行することがよくあります。 GUIソフトウェアがメモリ内のすべてのファイル名のリストを収集しようとすると、私は驚かないでしょう。プロファイルを作成するためにこれを行う必要はありません。プロのツールは間違いなくストリーミング入力と出力を処理するように設計されてtarいますgzip。つまり、メモリよりもはるかに大きい入力と出力を処理できます。

tarGUIプログラムを使用していない場合は、次のように完全に日常的な呼び出しを使用してこのアーカイブを作成できます。

tar czf foo.tar.gz foo

その中には、foo500万個のファイルがすべて入っているディレクトリがあります。

この質問に対する他の答えは、tar結果を複数の部分に分割したい場合に試すことができるいくつかの追加の代替コマンドを提供します。

おすすめ記事