Zstdは、高速でリアルタイムのデータ圧縮のためにFacebookでYannCollectによって開発されたZstandardを指します。これはCで書かれていますが、Java、Python、JavaScriptなどのさまざまな一般的な言語のAPI実装も見つけることができます。これはロスレス圧縮アルゴリズムであり、より優れた圧縮率と、メモリ内の圧縮および解凍機能を備えています。
この記事では、zstd圧縮のさまざまな使用法とそのインストール方法について学習します。この記事のすべてのデモンストレーションは、Ubuntu20.04LTSシステムで実行されます。
LinuxへのZstandardのインストール
zstdには公式に保守されているパッケージがないため、ソースからコンパイルする必要があります。そのためには、ソースからcソフトウェアをコンパイルするためにbuild_essentialパッケージを作成する必要があります。
$ sudo apt update
$ sudo apt install build-essential git -y
次に、公式のgithubリポジトリからzstdソースコードを複製またはダウンロードします。次に、makeコマンドを使用してソースをコンパイルし、次の方法でインストールします。
$ git clone https://github.com/facebook/zstd.git
$ cd zstd
$ sudo make
$ sudo make install
これで、システムにzstdが正常にインストールされました。これで、システム上のファイルやドキュメントを圧縮および解凍できます。次に、その使用法のいくつかについて説明します。
例を使用したZstdの使用法の一部
zstdの使用は、他の圧縮および解凍方法と非常に似ています。他のツールとは実装方法が異なりますが、ファイルを圧縮するためのtarとgzipの構文は似ています。以前にダウンロードしたzstdのソースコードを使用してインストールします。
Zstdを使用した圧縮
zstdを使用してファイルを圧縮するには、圧縮を参照する-zオプションを指定してコマンドを実行する必要があります。
$ zstd -z zstd/README.md
Zstdを使用した解凍
解凍するには、コマンドの-dオプションを使用して、ファイルへのパスを指定する必要があります。
$ zstd -z zstd/README.md.zst
圧縮ファイルに関する情報の表示
圧縮率、ファイルチェックサム、およびファイルサイズに関する情報を表示する-lオプションを使用して、zstd圧縮ファイルの詳細情報を表示できます。
$ zstd -l zstd/README.md.zst
圧縮後にソースファイルを削除する
ファイルを圧縮する場合、圧縮の完了後にソースファイルが自動的に削除されることはありません。圧縮の完了後に圧縮ソースファイルを削除する場合は、-rmオプションを指定してコマンドを実行する必要があります。
$ zstd -z --rm zstd/README.md
圧縮速度を上げる/下げる
デフォルトでは、zstdの圧縮速度は1ですが、1〜10の範囲の値を設定できます。圧縮中に–fastオプションを使用して速度を指定できます。値が大きいほど、zstdによるファイルの圧縮速度が速くなります。
$ zstd -z --rm --fast=4 zstd/README.md
圧縮時に動詞を表示する
詳細には、圧縮または解凍中の実際のプロセスに関するより詳細な情報が表示されます。詳細を表示するには、コマンドに-vオプションを指定する必要があります。
$ zstd -zv zstd/README.md
圧縮レベルの指定
zstdの圧縮レベルを指定できます。圧縮レベルの範囲は1〜19で、デフォルトの圧縮レベルは3です。–を使用してレベルを指定し、コマンドの圧縮レベルを指定できます。
$ zstd -zv -8 zstd/README.md
結論
この記事を読んでいただきありがとうございます。この記事は、zstdとは何か、Linuxシステムにzstdをインストールして使用する方法についての概念を設定するのに役立つと思います。