Archivo Tar Gzip (.tar.gz)
POSIX.1 StandarTar Gzip (.tar.gz, juga dikenal sebagai .tgz) menggabungkan arsip TAR dengan kompresi Gzip dan umum digunakan untuk distribusi perangkat lunak serta pengemasan file.
Pemeriksaan & Metadata
Sistem operasi dan penganalisis file mengenali file TAR.GZ dengan memeriksa urutan byte biner di bagian awal:
Tanda Tangan Header per Byte (Byte Penanda)
Sistem operasi dan penganalisis file mengenali file TAR.GZ dengan memeriksa urutan byte biner di bagian awal:
TANDA TANGAN HEX (OFFSET 0):
1F 8B 08REPRESENTASI ASCII: ..\x08
Standardisasi: POSIX.1 ustar (dibungkus gzip RFC 1952)
Spesifikasi Teknis
| Arsitektur Kontainer | Aliran arsip POSIX ustar / GNU tar yang dibungkus dalam kontainer kompresi Gzip RFC 1952 |
| Kompresi | Pengemasan dua tahap: serialisasi TAR, lalu kompresi DEFLATE |
| Urutan Byte | Amplop gzip Little-Endian yang membungkus blok tar POSIX oktal |
| Ruang Warna | Tidak berlaku (kontainer arsip) |
| Saluran & Struktur | Pohon direktori Unix dengan banyak file, tautan simbolik, kepemilikan file, dan bit izin |
| Dimensi Maksimum | Ukuran arsip streaming tidak terbatas |
| Transparansi | Pelestarian struktur dan data sistem berkas yang lossless dan akurat hingga ke setiap bit |
| Streaming & Progresif | Streaming menyeluruh yang dapat dialirkan melalui pipa: dekompresi dan ekstraksi dilakukan bersamaan dalam satu lintasan |
Perbandingan Teknis TAR.GZ dengan Pesaing
| Atribut Teknis | TAR.GZ (Saat Ini) | ZIP | 7Z | TAR.BZ2 |
|---|---|---|---|---|
| Izin Unix | Menyimpan metadata POSIX yang didukung oleh arsip dan alat ekstraksi | Terbatas / sering hilang | Atribut dasar dilestarikan | Metadata POSIX terpilih yang didukung oleh alat ekstraksi |
| Rasio Kompresi | Sedang (Gzip DEFLATE) | Sedang (ZIP DEFLATE) | Sangat Tinggi (LZMA2) | Tinggi (Bzip2 BWT) |
| Kecepatan Dekompresi | Cepat (~300 MB/s) | Cepat (~300 MB/s) | Sedang (~100 MB/s) | Lambat (~40 MB/s) |
| Standar Ekosistem Linux | Format bawaan yang digunakan luas di dunia sumber terbuka | Pilihan bawaan untuk desktop konsumen | Pilihan favorit para penggemar Windows | Rilis sumber Linux warisan |
Pola Kerusakan Umum dan Panduan Pemulihan Hex
Baris perintah melaporkan 'gzip: stdin: invalid compressed data--format violated'.
Penyebab Utama: Byte yang rusak pada amplop Gzip atau unduhan yang terpotong.
Pemulihan: Coba pemulihan parsial menggunakan Ekstraktor Arsip File2File.app atau 'tar -izxf broken.tar.gz'.
Analisis Keamanan & Vektor Serangan Parser
Arsip TAR.GZ menggabungkan risiko dari bom kompresi dan serangan penelusuran direktori (directory traversal) jika diekstrak secara sembarangan.
Vektor Serangan yang Diketahui
- Amplifikasi seperti bom ZIP: file .tar.gz kecil dapat mengembang menjadi terabita data nol.
- Penelusuran direktori (misalnya '../../root/.ssh/authorized_keys') yang menimpa berkas istimewa.
- Pembuatan node perangkat berbahaya selama ekstraksi sebagai root.
Praktik Terbaik Defensif: Ekstrak arsip sebagai pengguna tanpa hak istimewa dan validasi semua jalur berkas tujuan untuk mencegah traversal direktori.
Asal-Usul & Tonggak Sejarah
Keunggulan & Kelebihan Utama
- Proyek perangkat lunak sering menerbitkan arsip kode sumber sebagai .tar.gz karena TAR mengelompokkan struktur direktori dan Gzip mengompresi alirannya.
- Lapisan TAR dalam .tar.gz dapat mencatat izin dan symlink. Pemulihannya bergantung pada alat ekstraksi dan sistem operasi tujuan; periksa izin setelah mengekstrak di platform lain.
- Dapat dialirkan sepenuhnya (streamable): dapat diunduh, didekompresi, dan diekstrak melalui pipa jaringan tanpa menulis file sementara ke disk.
Keterbatasan Teknis & Kekurangan
- Mengekstrak satu file memerlukan dekompresi seluruh arsip hingga ke lokasi file tersebut.
- Rasio kompresi lebih rendah daripada alternatif modern seperti .tar.xz atau .tar.zst.
- Kurang intuitif pada sistem Windows lama dibandingkan format ZIP yang didukung luas.
Fakta Teknis Menarik
- Pada sistem MS-DOS dengan batas nama berkas 8.3, '.tar.gz' dipersingkat menjadi '.tgz'.
- Setiap kali Anda menjalankan 'npm install', npm mengunduh dan mengekstrak paket .tgz (tar.gz) di latar belakang.
- Pengguna Linux sering mengingat perintah untuk mengekstrak file tar.gz dengan mnemonik 'eXtract Ze File': tar -xzf file.tar.gz.
Pertanyaan Teknis yang Sering Diajukan
Apa perbedaan antara .tar.gz dan .zip?
.zip menyimpan file dengan direktori pusat, sedangkan .tar.gz membungkus aliran TAR dalam Gzip. Pelestarian metadata bergantung pada arsip dan pengaturan ekstraksi.
Apakah .tgz sama dengan .tar.gz?
Ya. .tgz hanyalah singkatan tiga huruf untuk ekstensi .tar.gz, yang awalnya dibuat untuk sistem operasi dengan batas nama berkas 8.3, seperti DOS.
Bagaimana cara mengekstrak file .tar.gz di Windows?
Anda dapat mengekstrak file .tar.gz langsung di peramban web Anda menggunakan File2File.app tanpa menginstal WinRAR atau 7-Zip.