圧縮ユーティリティの最大ファイルサイズ制限| Unix/Linux

圧縮ユーティリティの最大ファイルサイズ制限| Unix/Linux

Unix / Linuxでは、圧縮ユーティリティ(gzip / compress)が圧縮できるファイルサイズに最大限の制限がありますか?数年前、gzipページで最大4 GBのファイルを圧縮できることに言及したことを覚えています。実際、定期的に約512 GBのファイルを圧縮する必要があります。圧縮ユーティリティで複数のファイルをテストした結果、圧縮前と後のDBファイルのハッシュコード(MD5)が同じであることがわかりました。

答え1

gzipこれで、4GiBを超えるサイズのファイルを事実上独自の制限なしに圧縮できます(デフォルトのファイルシステムによって制限されます)。 4GiBより大きいファイルに対する唯一の制限は、gzip -l1.11以下ではそのサイズが正しく報告されていないことです。大容量GZIPPEDファイルの圧縮されていないサイズを計算する最速の方法代わりに。この問題はgzip1.12で修正されました。gzip -l保存されたサイズを表示する代わりに、データを解凍して元のデータの実際のサイズを確認します。

より適切な圧縮および/または速度を提供する他の多くの圧縮ツールがあります。XZ7つのジッパー...

答え2

Gzipはカスケードストリーム圧縮(マンページの「高度な使い方」を参照)なので、アルゴリズムがハードコーディングされた制限(*)に達すると、現在のストリームを終了して新しいストリームを開始できます。

したがって、gzip自体にはデータサイズに対する厳しい制限はありません。

Xflate(*制限があるかどうかはわかりません)

関連情報