Wie kann man unter Linux zstandard-komprimierte Daten entpacken?
- Einführung in Zstandard-Kompression
- Vorbereitung: Installation von zstd unter Linux
- Entpacken von zstandard-komprimierten Dateien
- Dekompression im Stream oder zur Weiterverarbeitung
- Zusätzliche Hinweise
Einführung in Zstandard-Kompression
Zstandard, häufig auch als zstd abgekürzt, ist ein modernes Kompressionsverfahren, das von Facebook entwickelt wurde. Es bietet eine hohe Kompressionsrate bei gleichzeitig hoher Dekompressionsgeschwindigkeit. Zstandard hat sich als Alternative zu älteren Kompressionsalgorithmen wie gzip, bzip2 oder xz etabliert und wird immer häufiger zum Komprimieren von Dateien unter Linux verwendet.
Vorbereitung: Installation von zstd unter Linux
Um zstandard-komprimierte Daten unter Linux entpacken zu können, benötigt man das entsprechende Programm zstd. In den meisten Linux-Distributionen ist zstd in den offiziellen Paketquellen vorhanden und kann einfach über den Paketmanager installiert werden. Beispielsweise verwendet man bei Debian-basierten Systemen wie Ubuntu den Befehl sudo apt install zstd, bei Fedora sudo dnf install zstd oder bei Arch Linux sudo pacman -S zstd. Nach der Installation steht das Kommandozeilenwerkzeug zstd und auch unzstd zur Verfügung.
Entpacken von zstandard-komprimierten Dateien
Wenn man eine Datei mit der Endung .zst hat, handelt es sich in der Regel um mit zstd komprimierte Daten. Um diese zu entpacken, kann man verschiedene Methoden nutzen. Die einfachste Variante ist der Befehl unzstd datei.zst, welcher die Datei entpackt und die komprimierte Datei standardmäßig löscht. Wenn man die Originaldatei behalten möchte, verwendet man die Option --keep, also unzstd --keep datei.zst. Alternativ kann man auch den Befehl zstd -d datei.zst verwenden, was dasselbe bewirkt wie unzstd.
Dekompression im Stream oder zur Weiterverarbeitung
Manchmal möchte man komprimierte Daten nicht als Datei entpacken, sondern direkt im Terminal oder in einer Pipe weiterverarbeiten. Hierfür bietet zstd die Möglichkeit, Daten über die Standardeingabe und -ausgabe zu dekomprimieren. Zum Beispiel kann man mit zstd -d -c datei.zst > datei die komprimierte Datei entpacken und die Ausgabe in eine neue Datei namens datei schreiben, ohne die ursprüngliche Datei zu löschen. Ebenfalls kann zstd -d -c genutzt werden, um komprimierte Daten in einer Pipe weiterzuleiten, zum Beispiel in Kombination mit tar oder anderen Tools.
Zusätzliche Hinweise
Sollte das zstd-Tool nicht verfügbar sein oder man möchte Zstandard-Daten ohne Installation eines zusätzlichen Programms entpacken, gibt es wenige Alternativen, da es ein spezifisches Format ist. Tools wie tar unterstützen inzwischen auch zstd als Kompressionsformat, wenn sie entsprechend kompiliert wurden. Ein Beispiel: tar --use-compress-program=unzstd -xf archiv.tar.zst entpackt ein mit zstd komprimiertes tar-Archiv. Es lohnt sich daher, auch die Kompatibilität von vorhandenen Tools zu prüfen.
