GNU/Linux >> Linux の 問題 >  >> Linux

Linuxで大きな(100GB以上)ファイルをより速くgzip圧縮する方法

Linuxユーザーとシステム管理者は、ファイル管理ルーチンとパスを交差することに失敗することはありません。 Linuxシステム、プログラム、およびユーザーファイルがメガバイトからギガバイトに増加するにつれて、OSにバインドされたファイルの一部を常にzipまたは圧縮する必要があります。

[あなたも好きかもしれません:Linuxで1GBまたは10GBの大きなファイルを作成する方法]

これらのファイルを圧縮または圧縮する利点は次のとおりです。

  • Linuxマシンに追加のストレージスペースを節約して作成できます。
  • Linuxには追加のストレージスペースがあるため、効率が向上します。
  • 圧縮ファイルは、他のマシン環境やシステムに簡単に転送できます。
  • ファイルを圧縮または圧縮すると、データ暗号化の利点が得られます。

ほとんどのLinuxユーザーはGzipに精通しています 大きなファイルを圧縮したり、少し大きいファイルサイズからzipファイルを作成したりする効果的な手段として。 Gzip ほとんどすべてのLinuxオペレーティングシステムディストリビューションにプリインストールされています。

次のコマンドを使用して、Linuxシステムでの可用性を確認できます。

$ gzip --version

LinuxでGzipを使用してファイルを圧縮する方法

Gzipを使用して単純なファイルを圧縮するには 、次のようなコマンドを実行するだけで済みます。

$ gzip linuxshelltips_v2.txt

上記のgzipを参照するときは、圧縮または圧縮が必要なファイルと同じパスにいる必要があります コマンド。

LinuxでGzipを使用して大きなファイルを圧縮する方法

Gzipを使用する Linuxでファイルを圧縮する場合は、大きなファイルの処理を開始するまでは高速で効率的です。 100GB +の圧縮 Core(TM)i3-2350M CPU @ 2.30 GHzなどの最小CPU仕様のマシンハードウェアのパフォーマンスが低い場合でも、Gzipを介したファイルは、圧縮プロセス全体が正常に完了するまでに不要な時間を要します。手元にこれほど多くの時間がない場合はどうなりますか?

Gzip は1つのタスクにバインドされているため、一度に1つのファイル圧縮ジョブを完全に実行できます。ファイルのみを処理し、ディレクトリの圧縮を無視します。

このような制限にもかかわらず、アプリケーションは、gzipで圧縮されたファイルを読み取る前に抽出する必要はありません。ただし、単一のプロセッサコアに依存しているため、大きなファイルの圧縮が完了するまでに数時間かかります。

Linuxでの高圧縮のためのGzipの代替手段

この記事のタイトルは、 Gzipを使用して大きなファイルを高圧縮で迅速に圧縮する必要性に対応しています。 、 Gzipの欠点に対処する必要がありました あなたがそれに代わるより良い選択肢を受け入れるために。

Pigz –高圧縮で100GB以上のファイルを圧縮

Gzipとは異なり これはシングルコア指向のPigz マルチコア指向であり、ターゲットファイルを“.gz”に圧縮します ファイル拡張子。

100GB + のような大きなファイルサイズを処理する場合、圧縮時間が改善されるという利点があります。 。 Pigzについて考えてみてください マルチスレッドGzipバージョンとして。

LinuxにPigzをインストールする

次のPigzのいずれかを参照してください Linuxオペレーティングシステムディストリビューションに関連するインストールコマンド。

$ sudo apt-get install pigz     [On Debian, Ubuntu and Mint]
$ sudo yum install pigz         [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
$ sudo emerge -a sys-apps/pigz  [On Gentoo Linux]
$ sudo pacman -S pigz           [On Arch Linux]
$ sudo zypper install pigz      [On OpenSUSE]    
Pigzを使用した100GB以上のファイルの圧縮

次の100GB以上のファイル統計を検討してください。

$ stat LinuxShellTipsBackup.iso

このファイル以降( LinuxShellTipsBackup.iso 100GB +であるという基準を満たしています 、つまり 164GB Pigzで圧縮してみてください 。

コマンドの使用法はGzipと同様である必要があります。

$ Pigz -9 -k -p4 LinuxShellTipsBackup.iso

コマンドオプション:

  • -9 :最高の圧縮(高圧縮)を提供します。
  • -k :元のファイルを保持します。
  • -p4 :マルチコア指向であるため、4つのプロセッサコアを使用するようにPigzに指示します。

プロセッサコアが多いほど、圧縮プロセスが高速になります。使用するプロセッサコアの数は、マシンのプロセッサプロパティによって異なります。 Core i3、Core i5、Corei7。

結果のファイル圧縮サイズは156GB 元の164GBから 。元のファイルを保持しないことにした場合、 8GBになります ( 164B-156GB )追加のストレージ。

もう1つの良い点は、アーカイブされたファイルを必ずしも抽出しなくても開いてナビゲートできることです。

$ stat LinuxShellTipsBackup.iso.gz

ファイルを解凍または抽出するには、次のいずれかのコマンドを使用します。

$ unpigz LinuxShellTipsBackup.iso.gz
or
$ pigz -d LinuxShellTipsBackup.iso.gz

PigzとGzipの圧縮速度の比較

圧縮速度を少し小さいファイルと比較してみましょう。

Pigzの場合、

$ time pigz file.mp4

Gzipの場合、

$ time gzip file.mp4

ピッグ 使用するプロセッサコアの数を指定しなくても、より高速な圧縮時間で勝ちます。

大きなファイル( 100GB + )を圧縮する際の注目すべきトリック )は、使用しているzipアプリケーションがマルチコアまたはマルチスレッド処理をサポートしていることを確認することです。そのようなプログラム(例: Pigz )大きなファイルサイズの圧縮に関連するボトルネック効果を制限または軽減します。


Linux
  1. Linuxでファイルの名前を変更する方法

  2. Linuxでファイルを圧縮および解凍する方法

  3. findおよびduコマンドを使用してLinuxで大きなファイルを検索する方法

  1. Linuxで複数のファイルを圧縮する方法

  2. Linuxでディレクトリをgzipで圧縮する方法

  3. Linux ですべてまたは特定のファイルを gzip する方法

  1. Linuxでファイルを見つける方法

  2. Linuxでファイルを解凍する方法

  3. Linuxで大きなファイルを探す