Tar Gzip sıkıştırılmış arşivi (.tar.gz)
POSIX.1 StandartTar Gzip (.tar.gz veya .tgz), bir TAR arşivini Gzip sıkıştırmasıyla birleştirir ve yazılım dağıtımı ile dosya paketlemede yaygın olarak kullanılır.
İncele ve Meta Veriler
İşletim sistemleri ve dosya çözümleyicileri, TAR.GZ dosyalarını başlangıçtaki ikili sihirli bayt dizisini inceleyerek tanımlar:
Bayt düzeyinde başlık imzası (sihirli baytlar)
İşletim sistemleri ve dosya çözümleyicileri, TAR.GZ dosyalarını başlangıçtaki ikili sihirli bayt dizisini inceleyerek tanımlar:
HEX İMZASI (OFSET 0):
1F 8B 08ASCII GÖSTERİMİ: ..\x08
Standartlaştırma: POSIX.1 ustar (RFC 1952 gzip ile sarılmış)
Teknik Özellikler
| Kapsayıcı mimarisi | RFC 1952 Gzip sıkıştırma kapsayıcısına sarılmış POSIX ustar / GNU tar arşiv akışı |
| Sıkıştırma | İki aşamalı paketleme: önce TAR serileştirmesi, ardından DEFLATE sıkıştırması |
| Bayt Düzeni (Endianness) | Sekizlik POSIX tar bloklarını saran küçük uçlu gzip zarfı |
| Renk Uzayları | N/A (Archive Container) |
| Kanallar ve Yapı | Çok dosyalı Unix dizin ağaçları, sembolik bağlantılar, dosya sahipliği ve izin bitleri |
| Maksimum Boyutlar | Sınırsız akışlı arşiv boyutu |
| Şeffaflık | Dosya sistemi yapılarının ve verilerin bit düzeyinde %100 tam ve kayıpsız korunması |
| Akış ve Aşamalı İşleme | Uçtan uca boru hattı akışı: tek geçişte eşzamanlı olarak açma ve çıkarma |
Teknik karşılaştırma matrisi: TAR.GZ ve rakipleri
| Teknik Nitelik | TAR.GZ (Güncel) | ZIP | 7Z | TAR.BZ2 |
|---|---|---|---|---|
| Unix İzinleri | Arşiv ve çıkarma aracının desteklediği POSIX meta verilerini saklar | Sınırlı / genellikle kaybolur | Temel öznitelikler korunur | Çıkarma aracının desteklediği seçili POSIX meta verileri |
| Sıkıştırma Oranı | Orta (Gzip DEFLATE) | Orta (ZIP DEFLATE) | Çok Yüksek (LZMA2) | Yüksek (Bzip2 BWT) |
| Sıkıştırmayı açma hızı | Hızlı (~300 MB/s) | Hızlı (~300 MB/s) | Orta (~100 MB/s) | Yavaş (~40 MB/s) |
| Linux Ekosistemi Standardı | Evrensel açık kaynak varsayılanı | Tüketici masaüstü varsayılanı | Windows meraklılarının favorisi | Eski Linux kaynak sürümleri |
Yaygın Bozulma Modları ve Hex Kurtarma Kılavuzu
Komut satırı şu hatayı verir: 'gzip: stdin: invalid compressed data--format violated'.
Kök Neden: Gzip zarfındaki bozuk baytlar veya kesintili indirme.
Kurtarma: File2File.app Arşiv Çıkarıcı'yı veya 'tar -izxf broken.tar.gz' komutunu kullanarak kısmi kurtarma dene.
Güvenlik Analizi ve Ayrıştırıcı Saldırı Vektörleri
TAR.GZ arşivleri, dikkatsizce çıkarıldığında hem sıkıştırma bombaları (zip bombs) hem de dizin geçişi saldırılarının risklerini birleştirir.
Bilinen Saldırı Vektörleri
- Küçük bir .tar.gz dosyasının terabaytlarca sıfıra genişlediği zip bombası tarzı amplifikasyon.
- Ayrıcalıklı dosyaların üzerine yazan dizin geçişi (örn. '../../root/.ssh/authorized_keys').
- Root olarak çıkarma sırasında kötü amaçlı aygıt düğümü (device node) oluşturulması.
Savunmaya yönelik en iyi uygulamalar: Arşivleri ayrıcalıksız kullanıcı olarak çıkar ve hedef dosya yollarının tamamını dizin geçişine karşı temizle.
Tarihsel kökenler ve önemli dönüm noktaları
Temel Avantajlar ve Artılar
- Yazılım projeleri, TAR dizin ağacını grupladığı ve Gzip akışı sıkıştırdığı için kaynak arşivlerini sık sık .tar.gz olarak yayımlar.
- .tar.gz, TAR katmanında izinleri ve sembolik bağlantıları kaydedebilir. Geri yükleme, çıkarma aracına ve hedef işletim sistemine bağlıdır; bu nedenle başka bir platformda açtıktan sonra izinleri kontrol edin.
- Tamamen akışa uygundur: Diske geçici dosyalar yazmadan ağ boruları üzerinden indirilebilir, sıkıştırması açılabilir ve ayıklanabilir.
Teknik Kısıtlamalar ve Eksiler
- Tek bir dosyayı çıkarmak, o dosyanın konumuna kadar tüm arşivin sıkıştırmasının açılmasını gerektirir.
- .tar.xz veya .tar.zst gibi modern alternatiflere göre daha düşük sıkıştırma oranı.
- Eski Windows sistemlerinde yaygın olarak desteklenen ZIP biçimine göre kullanımı daha az sezgiseldir.
İlginç Teknik Bilgiler
- 8.3 dosya adı sınırlarına sahip MS-DOS sistemlerinde '.tar.gz' kısaltılarak '.tgz' yapılmıştır.
- 'npm install' komutunu her çalıştırdığında npm, .tgz (tar.gz) paketlerini arka planda indirip çıkarır.
- Linux kullanıcıları, bir tar.gz dosyasını çıkarma komutunu 'eXtract Ze File' anımsatıcısıyla hatırlamalarıyla bilinir: tar -xzf file.tar.gz.
Sıkça Sorulan Teknik Sorular
.tar.gz ve .zip arasındaki fark nedir?
.zip dosyaları merkezi dizinle saklar; .tar.gz ise bir TAR akışını Gzip ile sarar. Meta verilerin korunması arşive ve çıkarma ayarlarına bağlıdır.
.tgz ile .tar.gz aynı şey midir?
Evet. .tgz, DOS gibi kısa 8.3 dosya adı sınırına sahip işletim sistemleri için orijinal olarak oluşturulmuş, .tar.gz için 3 harfe kısaltılmış bir dosya uzantısıdır.
Windows'ta bir .tar.gz dosyasını nasıl çıkartabilirim?
WinRAR veya 7-Zip yüklemeden .tar.gz dosyalarını web tarayıcında doğrudan File2File.app ile çıkarabilirsin.