TAR konvertálása GZ formátumba
A TAR archívum GZIP archívummá alakítása egy tömörítetlen fájlgyűjteményt egyetlen tömörített adatfolyammá alakít a veszteségmentes DEFLATE algoritmus használatával, drasztikusan csökkentve a fájlméretet.
Formátum-összehasonlítás és műszaki specifikációk
| Specifikáció | TAR | GZ |
|---|---|---|
| MIME-típus | application/ | application/ |
| Típus | archívumtároló | tömörített adatfolyam |
| Tömörítés | tömörítetlen (gyakran gzip/bzip2/xz-vel kombinálva) | veszteségmentes DEFLATE (LZ77 + Huffman) |
| Szabványos specifikáció | POSIX.1-2001 / IEEE 1003.1 ustar | IETF RFC 1952 (GZIP) |
| Fájlfejléc azonosító bájtjai | 75 73 74 61 72 (ustar) | 1F 8B |
A formátum áttekintése és alkalmazási területei
A szoftverfejlesztők és rendszergazdák gyakran egyetlen TAR-archívumba rendeznek több fájlt és könyvtárat, hogy megőrizzék a mappaszerkezetet és a fájljogosultságokat. A TAR-fájlok azonban önmagukban nem csökkentik a fájlok méretét, ezért a gyorsabb hálózati átvitelhez és a hatékonyabb tároláshoz tömöríteni kell az archívumot. A TAR-konténer GZIP-archívummá alakításakor a DEFLATE algoritmus a teljes adatfolyamot tömöríti. Ez bevett eljárás Linux- és Unix-környezetben a szoftverek terjesztéséhez, a rendszermentésekhez és a kiszolgálókra történő telepítéshez. Az olyan szabványos tömörítőeszközök, mint a gzip, közvetlenül a TAR nyers bájtjait dolgozzák fel, és kompakt fájlt hoznak létre, amely megőrzi az összes eredeti metaadatot.
Műszaki specifikációk és kodekáttekintés
A TAR (Tape Archive) fájl application/x-tar MIME-típusú, és beépített tömörítés nélkül, szekvenciálisan tárolja a fájlokat. A POSIX-szabványokra támaszkodik, és nullával kitöltött fejlécblokkokat használ. Ezzel szemben a GZIP fájl application/gzip MIME-típusú, és tömörített adatfolyam-konténerként működik a veszteségmentes DEFLATE algoritmus használatával, amely egyesíti az LZ77 csúszóablak-illesztést és a Huffman-kódolást. A fájl aláírások határozzák meg, hogy az operációs rendszerek hogyan azonosítják ezeket a formátumokat. Egy szabványos TAR-fájl gyakran az ustar jelzőt tartalmazza a 257-es eltolásnál. A GZIP fájl egy jellegzetes, kétbájtos mágikus szám aláírással kezdődik, nevezetesen az 1F 8B hexadecimális bájtokkal, amelyeket tömörítési jelzők és időbélyeg követ.
Operációs rendszer- és böngésző-kompatibilitás
A GZIP archívumok széles körben támogatottak a modern operációs rendszerekben, beleértve a Linuxot, a macOS-t és a Windows-t. Az olyan parancssori eszközök, mint a gzip és a gunzip előre telepítve érkeznek Unix-alapú rendszerekre, míg a modern Windows verziók natívan kezelik a GZIP-et a PowerShellben és a Fájlkezelőben. A webböngészők nem bontják ki közvetlenül a GZIP archívumokat a kliens oldalon JavaScript-könyvtárak nélkül, de a webszerverek rendszeresen használják a GZIP-et a HTTP-forgalom menet közbeni tömörítésére. A támogatás az alkalmazástól, az eszköztől, az operációs rendszertől és annak verziójától is függ.
Hasznos információk
A GZIP tömörítés alkalmazása előtt mindig hozza létre először a tömörítetlen TAR fájlt. Az egyes fájlok TAR-konténeren belüli tömörítése gyenge tömörítési arányt eredményez, mivel a DEFLATE algoritmus nem tudja olyan hatékonyan megtalálni a fájlok közötti mintákat, mint egyetlen folyamatos bájtfolyam esetében.
Gyakran ismételt kérdések
Hogyan alakítható át a TAR archívum GZIP archívummá minőségromlás nélkül?
A konverzió a veszteségmentes DEFLATE algoritmust használja. A veszteségmentes tömörítés azt jelenti, hogy minden egyes bájt, fájlengedély és mappaszerkezet pontosan úgy marad meg, ahogyan az eredeti TAR-fájlban szerepelt, nulla adatveszteséggel a kibontás során.
Mi a különbség a TAR archívum és a GZIP archívum között?
A TAR archívum egy konténerformátum, amely több fájlt és mappát egyesít egyetlen fájlba anélkül, hogy csökkentené a méretüket. A GZIP archívum egy tömörítési adatfolyam, amely matematikai algoritmusokkal csökkenti a fájlméretet, de általában egyszerre csak egy adatfolyamot kezel, ezért párosítják a TAR-t és a GZIP-et .tar.gz formátumban.