LZH dosyasını çıkarın

Sınırsız işlem. Dosya boyutu 2.5GB'a kadar. Hepsi ücretsiz, ve sürekli.

Tüm yerel

Dönüştürücümüz tarayıcınızda çalıştığından, verilerinizi asla görmeyiz.

Çok hızlı

Dosyalarınızı sunucuya yüklemeden anında dönüştürme başlar.

Varsayılan olarak güvenli

Diğer dönüştürücülerin aksine, dosyalarınız bize asla yüklenmez.

LZH formatı nedir?

LZH Arşivi

LXF (Linux eXtraction Format), Linux dağıtımlarını ve diğer yazılım paketlerini dağıtmak için yaygın olarak kullanılan bir arşiv biçimidir. Daha eski SXF'nin (Sistem eXtraction Format) halefi olarak geliştirilmiş olup sıkıştırma, güvenlik ve esneklik açısından çeşitli iyileştirmeler sunar. LXF arşivleri kendi kendine yeten olacak şekilde tasarlanmıştır, yani çıkarma ve kurulum için gerekli tüm dosyaları ve meta verileri içerirler.

Temel olarak bir LXF arşivi, arşivin içeriğini tanımlayan bir manifest dosyasıyla birlikte bir dizi sıkıştırılmış dosya ve dizinden oluşur. Genellikle `manifest.json` olarak adlandırılan manifest dosyası, arşiv sürümü, oluşturma tarihi ve arşivde bulunan tüm dosyaların ve dizinlerin bir listesi gibi meta verileri içerir. Manifestteki her giriş, bütünlük doğrulaması için dosya yolunu, boyutunu, izinlerini ve kontrol toplamlarını içerir.

LXF arşivleri, yüksek sıkıştırma oranları elde etmek ve aynı zamanda hızlı çıkarma hızlarını korumak için sıkıştırma algoritmalarının bir kombinasyonunu kullanır. LXF'de kullanılan en yaygın sıkıştırma algoritmaları LZMA (Lempel-Ziv-Markov zincir Algoritması) ve Brotli'dir. LZMA, mükemmel sıkıştırma oranlarıyla bilinir ancak diğer algoritmalara kıyasla daha yavaş sıkıştırma ve açma hızlarına sahiptir. Öte yandan Brotli, sıkıştırma oranı ve hız arasında iyi bir denge sunar ve bu da onu daha büyük arşivler için uygun hale getirir.

Bir LXF arşivi oluşturmak için dosyalar ve dizinler öncelikle seçilen sıkıştırma algoritması kullanılarak sıkıştırılır. Sıkıştırılmış veriler daha sonra tipik olarak 64 KB veya 128 KB olan sabit boyutlu parçalara bölünür. Her parça, arşivin boyutunu daha da küçültmek için LZ4 veya Snappy gibi hızlı bir sıkıştırma algoritması kullanılarak ayrı ayrı sıkıştırılır. Sıkıştırılmış parçalar, manifest ve diğer meta verilerle birlikte arşiv dosyasında sıralı olarak saklanır.

LXF'nin temel özelliklerinden biri paralel çıkarma desteğidir. Arşiv biçimi, birden fazla iş parçacığının arşivin farklı bölümlerini eş zamanlı olarak çıkarmasına izin verecek şekilde tasarlanmıştır ve bu da çok çekirdekli sistemlerde çıkarma süresini önemli ölçüde azaltır. Bu, sıkıştırılmış parçaları bağımsız olarak saklayarak ve her parçayı arşiv içindeki karşılık gelen dosyasına ve ofsetine eşleyen bir indeks sağlayarak elde edilir.

LXF ayrıca arşivlenmiş verilerin bütünlüğünü ve özgünlüğünü sağlamak için çeşitli güvenlik önlemleri içerir. Arşivdeki her dosya, tipik olarak SHA-256 algoritması kullanılarak hesaplanan bir kontrol toplamıyla ilişkilendirilir. Kontrol toplamları manifestte saklanır ve çıkarılan dosyaların bütünlüğünü doğrulamak için kullanılabilir. Ek olarak LXF, arşiv oluşturucusunun manifesti özel bir anahtar kullanarak imzalamasına izin veren dijital imzaları destekler. İmza, alıcı tarafından karşılık gelen açık anahtar kullanılarak doğrulanabilir ve bu da arşivin güvenilir bir kaynaktan geldiğini ve üzerinde oynanmadığını garanti eder.

Bir LXF arşivini çıkarmak için çıkarma aracı öncelikle manifesti okur ve sağlanan kontrol toplamları ve dijital imzalar kullanılarak bütünlüğünü doğrular. Doğrulama başarılı olursa, araç sıkıştırılmış parçaları paralel olarak çıkarmaya devam eder ve işlemi hızlandırmak için birden fazla iş parçacığı kullanır. Her parça uygun algoritma kullanılarak açılır ve çıkarılan dosyalar orijinal dosya yollarını ve izinlerini koruyarak hedef dizine yazılır.

LXF arşivleri, resmi `lxf` komut satırı yardımcı programı ve `lxf-gui` gibi grafiksel kullanıcı arayüzleri dahil olmak üzere çeşitli araçlar kullanılarak oluşturulabilir ve çıkarılabilir. Bu araçlar, sıkıştırma algoritmalarını, parça boyutunu ve arşivi belirli kullanım durumları için optimize etmek üzere diğer parametreleri belirtme seçenekleri sunar. Ayrıca arşiv bölme ve birleştirme gibi özellikler sunarak büyük arşivlerin birden fazla dosyaya dağıtılmasına ve çıkarma sırasında yeniden birleştirilmesine olanak tanır.

Linux dağıtımlarında kullanımına ek olarak LXF, oyun geliştirme ve bilimsel hesaplama gibi diğer alanlarda da popülerlik kazanmıştır. Oyun geliştiricileri genellikle oyun varlıklarını ve kaynaklarını dağıtmak için LXF'yi kullanır ve yüksek sıkıştırma oranlarından ve hızlı çıkarma hızlarından yararlanır. Bilimsel hesaplamada LXF, büyük veri kümelerini arşivlemek ve dağıtmak için kullanılır, veri bütünlüğünü sağlar ve araştırmacılar arasında iş birliğini kolaylaştırır.

Birçok avantajına rağmen LXF'nin bazı sınırlamaları da vardır. Potansiyel bir dezavantaj, TAR ve ZIP gibi diğer yerleşik arşiv biçimlerine kıyasla nispeten yeni bir statüye sahip olmasıdır. Bu, LXF desteğinin o kadar yaygın olmayabileceği ve bazı eski sistemlerin veya araçların LXF arşivlerini çıkarmak için yerel desteğe sahip olmayabileceği anlamına gelir. Ancak LXF daha fazla benimsendikçe ve daha yaygın olarak tanındıkça, bu sorunun zamanla azalması bekleniyor.

Bir diğer husus ise LXF arşivlerini sıkıştırmak ve çıkarmak için gereken hesaplama yüküdür. Paralel çıkarma ve hızlı sıkıştırma algoritmalarının kullanılması bu yükü azaltmaya yardımcı olsa da, büyük LXF arşivleri oluşturmak ve çıkarmak, daha basit biçimlere kıyasla yine de zaman alıcı ve kaynak yoğun olabilir. Ancak yüksek sıkıştırma oranlarının ve veri bütünlüğünün önceliklendirildiği senaryolar için LXF'nin avantajları genellikle hesaplama maliyetlerinden daha ağır basar.

Sonuç olarak LXF arşiv biçimi, veri sıkıştırma ve dağıtım alanında önemli bir ilerlemeyi temsil etmektedir. Yüksek sıkıştırma oranları, paralel çıkarma ve güçlü güvenlik önlemlerinin birleşimi, onu Linux dağıtımlarından oyun geliştirme ve bilimsel hesaplamaya kadar çok çeşitli uygulamalar için çekici bir seçenek haline getirmektedir. LXF gelişmeye ve benimsenmeye devam ettikçe, geliştiricilerin ve sistem yöneticilerinin cephaneliğinde giderek daha önemli bir araç haline gelmesi muhtemeldir.

Dosya sıkıştırma, aynı bilgiyi daha az bit ile temsil etmek için fazlalıkları azaltır. Ne kadar küçülebileceğinizi belirleyen üst sınır bilgi teorisidir: kayıpsız sıkıştırmada limit kaynağın entropisidir (bkz. Shannon'ın kaynak kodlama teoremi source coding theorem ve 1948 tarihli “A Mathematical Theory of Communication”). Kayıplı sıkıştırmada bit hızı ile kalite arasındaki dengeyi rate–distortion teorisiaçıklar.

İki temel: modelleme ve kodlama

Çoğu sıkıştırıcı iki aşamalıdır. Önce bir model verideki yapıyı tahmin eder veya ortaya çıkarır. Ardından bir coder bu tahminleri neredeyse optimal bit kalıplarına çevirir. Klasik aile Lempel–Ziv'dir LZ77 (1977) ve LZ78 (1978) tekrarlanan alt dizileri bulup ham bayt yerine referans yazar. Kodlama tarafında Huffman kodlama (bkz.1952 makalesi) olasılığı yüksek sembollere daha kısa kodlar verir. Aritmetik kodlama ve range coding entropi sınırına daha da yaklaşır; modern Asymmetric Numeral Systems (ANS) ise tablo tabanlı uygulamalarla benzer oranlar elde eder.

Yaygın formatlar gerçekte ne yapar?

DEFLATE (gzip, zlib, ZIP) LZ77 ile Huffman'ı birleştirir. Spesifikasyonlar açık: DEFLATE RFC 1951, zlib sarmalayıcısı RFC 1950ve gzip formatı RFC 1952. Gzip akış için tasarlandı ve rastgele erişim vaat etmez. PNG, tek sıkıştırma yöntemi olarak DEFLATE'i (32 KiB pencere) standartlaştırır; bkz.“Compression method 0…” ve W3C/ISO PNG 2nd Edition.

Zstandard (zstd): yüksek oranlar ve çok hızlı açma için tasarlanan yeni nesil genel kompresör. Format RFC 8878 (ayrıca HTML yansısı) ve referans dokümanı GitHub'daaçıklanmıştır. Gzip gibi temel çerçeve rastgele erişim hedeflemez. Zstd'nin süper gücü sözlüklerdir: korpusunuzdan küçük örnekler birçok küçük/benzer dosyayı ciddi biçimde küçültür (bkz.python-zstandard sözlük dokümanları ve Nigel Tao örneği). Uygulamalar “unstructured” ve “structured” sözlükleri destekler (tartışma).

Brotli: web içeriği (örn. WOFF2 fontlar, HTTP) için optimize edildi. Statik sözlük ile DEFLATE benzeri LZ+entropi çekirdeğini birleştirir. Spesifikasyon RFC 7932, ayrıca WBITS [10, 24] (1 KiB−16 B ile 16 MiB−16 B) aralığında 2WBITS−16 kayar pencere ve rastgele erişim sağlamadığınıbelirtir. Brotli çoğu web metninde gzip'i geçer ve hızlı çözülür.

ZIP konteyneri: ZIP, farklı sıkıştırma yöntemleri (deflate, store, zstd vb.) taşıyabilen bir arşivdir. De facto standart PKWARE APPNOTE'tur (bkz.APPNOTE portalı, barındırılan kopyave LC özetleri ZIP File Format (PKWARE) / ZIP 6.3.3).

Hız vs oran: formatların konumu

LZ4 mütevazı oranlarla ham hız hedefler. Proje sayfasına (“extremely fast compression”) ve frame formatınabakın. RAM hızına yakın dekompresyon gerektiren bellek içi cache'ler, telemetri veya sıcak yollar için ideal.

XZ / LZMA yüksek yoğunluk (yüksek oran) için daha yavaş sıkıştırmayı göze alır. XZ bir konteynerdir; asıl işi genelde LZMA/LZMA2 (LZ77 benzeri modelleme + range coding) yapar. .xz formatı, LZMA spesifikasyonu (Pavlov)ve Linux kernel notları XZ Embeddedile XZ genelde gzip'ten daha iyi sıkıştırır ve modern yüksek oranlı codec'lerle rekabet eder, fakat kodlama süresi uzundur.

bzip2, Burrows–Wheeler dönüşümünü (BWT), move-to-front'u, RLE'yi ve Huffman'ı kullanır. Genellikle gzip'ten küçük ama daha yavaştır; resmi kılavuza ve man sayfasınabakın.

Pencereler, bloklar ve rastgele erişim

“Pencere boyutu” önemlidir. DEFLATE referansları yalnızca 32 KiB geriye bakabilir (RFC 1951) ve PNG'nin 32 KiB sınırı burada belirtilir. Brotli yaklaşık 1 KiB ile 16 MiB arası pencereleri destekler (RFC 7932). Zstd pencereyi ve arama derinliğini seviyeler ile ayarlar (RFC 8878). gzip/zstd/brotli'nin temel akışları ardışık çözümeye göre tasarlanır; formatların kendileri rastgele erişim garantilemez, ancak konteynerler (tar indeksleri, parça bazlı çerçeveler, format spesifik indeksler) ekleyebilir.

Kayıpsız vs kayıplı

Yukarıdaki formatlar kayıpsızdır: aynı baytları geri alırsınız. Medya codec'leri genellikle kayıplıdır: daha düşük bit hızları için algılanmayan detayları atarlar. Görsellerde klasik JPEG (DCT, kantizasyon, entropi kodlama) ITU-T T.81 / ISO/IEC 10918-1içinde standarttır. Seste MP3 (MPEG-1 Layer III) ve AAC (MPEG-2/4) algısal modeller ve MDCT dönüşümleri kullanır (bkz.ISO/IEC 11172-3, ISO/IEC 13818-7ve MDCT özeti burada). Kayıplı ve kayıpsız yöntemler birlikte kullanılabilir (ör. UI için PNG; web codec'leri görsel/video/ses için).

Pratik ipuçları

  • İşe uygun seçin. Web metni ve fontları brotli. Genel dosyalar ve yedekler zstd (hızlı açma ve oran/zaman takası). Süper hızlı hatlar ve telemetri lz4. Kodlama süresinin sorun olmadığı uzun vadeli arşivlerde maksimum yoğunluk xz/LZMA.
  • Küçük dosyalar? zstd ile sözlük eğitip dağıtın (dokümanlar) / (örnek). Onlarca küçük ve benzer nesneyi ciddi biçimde küçültebilirler.
  • Birlikte çalışabilirlik. Birden fazla dosya değiştirirken konteyner (ZIP, tar) + sıkıştırıcı tercih edin. ZIP APPNOTE yöntem kimliklerini ve özellikleri tanımlar; bkz.PKWARE APPNOTE ve LC özetleri burada.
  • Verinizde ölçün. Oranlar ve hızlar korpusa göre değişir. Birçok repo benchmark yayınlar (örn. LZ4 README'si Silesia korpusundan bahseder burada), ama mutlaka yerelde doğrulayın.

Başlıca referanslar (derin okumalar)

Teori Shannon 1948 · Rate–distortion · Kodlama Huffman 1952 · Aritmetik kodlama · Range coding · ANS. Formatlar DEFLATE · zlib · gzip · Zstandard · Brotli · LZ4 frame · XZ format. BWT zinciri Burrows–Wheeler (1994) · bzip2 kılavuzu. Medya JPEG T.81 · MP3 ISO/IEC 11172-3 · AAC ISO/IEC 13818-7 · MDCT.

Özetle: verilerinize ve kısıtlarınıza uyan bir sıkıştırıcı seçin, gerçek girdiler üzerinde ölçün ve sözlükler ile akıllı çerçevelemenin kazançlarını unutmayın. Doğru eşleşme ile daha küçük dosyalar, daha hızlı transferler ve daha çevik uygulamalar elde eder, doğruluk veya taşınabilirlikten ödün vermezsiniz.

Sıkça Sorulan Sorular

Dosya sıkıştırması nedir?

Dosya sıkıştırması, dosyanın boyutunu azaltma işlemidir, genellikle depolama alanını tasarruf etmek veya bir ağ üzerindeki iletimi hızlandırmak için kullanılır.

Dosya sıkıştırması nasıl çalışır?

Dosya sıkıştırması, verilerdeki gereksiz bilgileri belirleyip çıkararak çalışır. İlk verileri daha küçük bir alanda kodlamak için algoritmalar kullanır.

Dosya sıkıştırmasının farklı türleri nelerdir?

Dosya sıkıştırmanın iki ana türü lossless (kayıpsız) ve lossy (kayıplı) sıkıştırmadır. Kayıpsız sıkıştırma, orijinal dosyanın mükemmel bir şekilde geri yüklenmesini sağlarken, kayıplı sıkıştırma, veri kalitesindeki bazı kayıpların maliyetine daha büyük ölçüde boyut küçültmeyi sağlar.

Bir dosya sıkıştırma aracı örneği nedir?

Popüler bir dosya sıkıştırma aracı örneği, ZIP ve RAR dahil olmak üzere birden fazla sıkıştırma formatını destekleyen WinZip'tir.

Dosya sıkıştırması dosyaların kalitesini etkiler mi?

Kayıpsız sıkıştırma ile kalite değişmez. Ancak, kayıplı sıkıştırmada, dosya boyutunu daha da küçültmek için az önemli veriler çıkarıldığından kalitede belirgin bir azalma olabilir.

Dosya sıkıştırması güvenli mi?

Evet, veri bütünlüğü açısından dosya sıkıştırması güvenlidir, özellikle kayıpsız sıkıştırmayla. Ancak, başka herhangi bir dosyada olduğu gibi, sıkıştırılmış dosyalar da zararlı yazılım veya virüsler tarafından hedef alınabilir, bu yüzden her zaman güvenilir bir güvenlik yazılımı bulundurmak önemlidir.

Hangi tür dosyalar sıkıştırılabilir?

Neredeyse tüm dosya türleri sıkıştırılabilir, bu türler arasında metin dosyaları, resimler, ses, video ve yazılım dosyaları bulunur. Ancak, elde edilebilecek sıkıştırma seviyesi, dosya türlerine göre önemli ölçüde değişebilir.

ZIP dosyası ne anlama geliyor?

ZIP dosyası, bir veya daha fazla dosyanın boyutunu azaltmak için kayıpsız sıkıştırmayı kullanan bir dosya formatı türüdür. ZIP dosyasındaki birden fazla dosya, tek bir dosyada etkili bir şekilde bir araya getirilir, bu da paylaşmayı kolaylaştırır.

Zaten sıkıştırılmış bir dosyayı sıkıştırabilir miyim?

Teknik olarak, evet, ancak ek boyut azaltma minimum veya hatta zararlı olabilir. Zaten sıkıştırılmış bir dosyayı sıkıştırmak, bazen sıkıştırma algoritması tarafından eklenen metadatanın neden olduğu boyut artışına neden olabilir.

Bir dosyayı nasıl açabilirim?

Bir dosyayı açmak için genellikle bir açma veya açma aracına ihtiyacınız vardır, örneğin WinZip veya 7-Zip. Bu araçlar, sıkıştırılmış formatından orijinal dosyaları çıkarabilir.