Was ist das XZ-Dateiformat?
.xz ist ein komprimiertes Archiv-Dateiformat, das die XZ-Kompressionsmethode verwendet. Das Format ist nativ für XZ Utils, das Referenz-Softwaretool, das als Teil des Tukaani-Projekts (einer auf Slackware basierenden GNU/Linux-Distribution) entwickelt wurde.
XZ und TAR
Ein .xz-Archiv kann nur einen einzelnen komprimierten Stream speichern und enthält keinen eigenen Verzeichnisbaum. Aus diesem Grund werden .xz-Dateien häufig in Kombination mit TAR-Archiven verwendet - TAR fasst ausgewählte Dateien in einem einzigen Archiv zusammen, und der XZ-Algorithmus wird dann zur Kompression angewendet. Die resultierende Datei trägt die Endung .tar.xz oder .txz.
LZMA2-Kompressionsalgorithmus
Die XZ-Kompression basiert auf dem LZMA2-Algorithmus - einer Weiterentwicklung des ursprünglichen LZMA-Standards. Er ermöglicht hohe Kompressionsraten und führt zu deutlich reduzierten Dateigrößen: XZ-Archive sind typischerweise 30 % kleiner als GZIP und 15 % kleiner als BZIP2-Archive. XZ bietet eine verlustfreie Kompression, um jeglichen Informationsverlust zu verhindern.
Zusätzliche Hinweise
- Im Vergleich zu anderen Kompressionsmethoden ist der XZ-Kompressionsprozess eher langsam, die Dekompression ist jedoch deutlich schneller.
- XZ-Archive werden häufig für die Verteilung von Linux-Softwarepaketen verwendet, einschließlich Slackware und den meisten wichtigen Kernel-Quellcode-Tarballs.
- Das
.xz-Format identifiziert sich durch die feste 6-Byte-Header-MagicFD 37 7A 58 5A 00und verifiziert die Integrität standardmäßig mittels CRC64-Prüfsummen pro Block und pro Stream (CRC32 und SHA-256 werden ebenfalls unterstützt). - Anfang 2024 wurde in den XZ Utils Versionen 5.6.0 und 5.6.1 eine absichtlich eingeschleuste Backdoor (CVE-2024-3094) in der
liblzma-Bibliothek gefunden. Die Spezifikation des.xz-Dateiformats ist davon nicht betroffen; nur diese spezifischen Build-Tarballs waren kompromittiert.
Sicherheit
RISIKO: LOWDas .xz-Format enthält keinen ausführbaren Code und kann nicht „ausgeführt“ werden; Risiken gehen nur von dem aus, was sich darin befindet (vor dem Vertrauen entpacken). Beachten Sie den Supply-Chain-Vorfall von 2024 (CVE-2024-3094): Eine Backdoor wurde in den liblzma-Build von xz 5.6.0/5.6.1 eingefügt, der in einigen Test-Channels von Distributionen ausgeliefert wurde - dies betrifft die Tool-/Bibliotheks-Binärdateien, nicht die .xz-Dateien, die Sie erhalten. Vorsicht vor gefälschten „xz opener“-Downloadseiten, die Adware bündeln; verwenden Sie 7-Zip/PeaZip von deren offiziellen Seiten.
Formatdetails
kurz gefasstProgramme zum Öffnen von XZ-Dateien
tar -xf file.tar.xz aus (macOS bsdtar unterstützt xz) oder installieren Sie xz über Homebrew. xz -d file.xz zum Dekomprimieren oder tar -xf file.tar.xz für Tarballs. Auf den meisten Distros vorinstalliert. Technische Details
technische Spezifikation| Kompressionsalgorithmus | LZMA2 (Weiterentwicklung von LZMA); optionale Filterkette mit Delta- und BCJ-Filtern (branch/call/jump) |
| Containerstruktur | Stream-Header → ein oder mehrere komprimierte Blöcke → Block-Index → Stream-Footer |
| Stream-Header-Magic | FD 37 7A 58 5A 00 - feste 6 Bytes bei Offset 0 |
| Stream-Footer-Magic | 59 5A („YZ“) - immer die letzten 2 Bytes jedes .xz-Streams |
| Byte-Reihenfolge | Little-endian |
| MIME-Typ | application/x-xz |
| Integritätsprüfung | Prüfsummen pro Block und pro Stream; standardmäßig CRC64; CRC32 und SHA-256 ebenfalls unterstützt |
| Verschlüsselung | Keine - keine integrierte Verschlüsselung; Daten bei Bedarf vor der Kompression verschlüsseln |
| Dateispeicherung | Nur einzelner komprimierter Stream; keine Dateinamen oder Verzeichnisstruktur (Kombination mit .tar für Multi-Datei-Archive) |
| Kodierung | Binär |
| Typische komprimierte Größe | Zehntausende KB bis mehrere GB; Linux-Kernel-Quellcode-Tarballs üblicherweise 50-200 MB |
| Kompressionsrate vs. Alternativen | Typischerweise ~30 % kleiner als gzip und ~15 % kleiner als bzip2 bei Quellcode |
| Sicherheitshinweis | CVE-2024-3094: XZ Utils 5.6.0/5.6.1 Tarballs enthielten eine Backdoor in liblzma; die .xz-Dateiformat-Spezifikation ist nicht betroffen |
| Plattformunterstützung | Linux, BSD, macOS, Windows (via XZ Utils, 7-Zip, PeaZip, NanaZip, The Unarchiver) |
| Veröffentlicht | 2009 (XZ Utils 4.999.x / 5.0; format finalized 2009) |
| Neueste Version | XZ file format 1.0.4 (2009); XZ Utils 5.6.x toolchain |
| Offener Standard | Ja · lizenzgebührenfrei |
| Spezifikation | tukaani.org |
XZ-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu XZ-Dateien.
Häufig gestellte Fragen
Wie öffne ich eine .xz-Datei unter Windows?
Was ist der Unterschied zwischen .xz und .tar.xz?
Ist .xz besser als .gz oder .zip?
Ist das xz-Dateiformat von der xz-Backdoor (CVE-2024-3094) betroffen?
Wie dekomprimiere ich .xz unter Linux?
xz -d file.xz, um die Originaldatei zu erhalten, oder tar -xf file.tar.xz, um einen Tarball zu entpacken. xz ist auf den meisten Distributionen vorinstalliert.