man/archiving_and_compression
man · Arşivleme & Sıkıştırma

$ xar

Bölüm 1 · Arşivleme & Sıkıştırma

eXtensible ARchiver

Kullanımdan Kaldırma Uyarısı

xar artık Apple tarafından aktif olarak geliştirilmemektedir. xar istemcileri alternatif arşiv biçimlerine yönelmelidir.

Özet

xar -[ctx][v] ...

Açıklama

XAR projesi, kolayca genişletilebilir bir arşiv biçimi sağlamayı amaçlamaktadır. Önemli tasarım kararları arasında arşivlenmiş dosyalara rastgele erişim için genişletilebilir bir XML içerik tablosu (TOC), akış halindeki arşivlerin verimli işlenmesini sağlamak için TOC'un arşivin başında saklanması, isteğe bağlı büyüklükteki dosya boyutlarının işlenebilmesi ve arşivdeki bireysel dosyalar için bağımsız kodlamaların seçilebilmesi yer alır.

Biçim ayrıca bireysel dosyalar için hem sıkıştırılmış hem de sıkıştırılmamış biçimde sağlama toplamlarının saklanabilmesini ve içerik tablosunun zengin meta verilerinin sorgulanabilmesini sağlar.

Fonksiyonlar

Aşağıdaki seçeneklerden biri kullanılmalıdır:

  • -c: Bir arşiv oluşturur.
  • -t: Bir arşivin içeriğini listeler.
  • -x: Bir arşivi çıkartır.

Yukarıdakilerin tümü -f seçeneğinin kullanılmasını gerektirir; çünkü xar programının bu sürümü boru hatlarını (pipe) veya soketleri doğru şekilde işleyememektedir.

  • -f: Oluşturma, listeleme veya çıkartma için kullanılacak dosya adı. Çıkartma işleminde bu, POSIX düzenli ifadesi (regular expression) olabilir.

Seçenekler

  • --compression: Kullanılacak sıkıştırma türünü belirtir. Geçerli değerler none, gzip, bzip2 ve bazı sistemlerde lzma değerleridir. Varsayılan değer gzip değeridir.
  • -C <yol>: Çıkartma sırasında, xar arşivi çıkarmadan önce belirtilen dizine geçiş yapar (chdir).
  • -a: --compression=lzma seçeneğinin eş anlamlısıdır.
  • -j: --compression=bzip2 seçeneğinin eş anlamlısıdır.
  • -z: --compression=gzip seçeneğinin eş anlamlısıdır.
  • --compression-args=<argümanlar>: Seçilen sıkıştırma motoruna yönelik argümanları belirtir. gzip, bzip2 ve lzma seçeneklerinin hepsi, kullanılacak sıkıştırma seviyesini belirten 0 ile 9 arasında tek bir tam sayı argümanı alır.
  • --dump-toc=<dosya_adı>: xar XML üstbilgisini belirtilen dosyaya döker. Standart çıktıyı belirtmek için - kullanılabilir.
  • --dump-toc-cksum: TOC sağlama toplamını, TOC algoritmasıyla birlikte standart çıktıya döker.
  • --dump-header: xar ikili üstbilgi bilgilerini standart çıktıya yazdırır.
  • --extract-subdoc=<ad>: Belirtilen alt belgeyi, geçerli çalışma dizininde <ad>.xml olarak adlandırılan bir belgeye çıkartır.
  • --list-subdocs: XML üstbilgisindeki alt belgeleri listeler.
  • --toc-cksum: XML üstbilgisi doğrulaması için kullanılacak özetleme algoritmasını belirtir. Geçerli değerler bazı sistemlerde md5, ayrıca sha1, sha256 ve sha512 değerleridir. Varsayılan değer sha1 değeridir.
  • --file-cksum: Dosya içeriği doğrulaması için kullanılacak özetleme algoritmasını belirtir. Geçerli değerler bazı sistemlerde md5, ayrıca sha1, sha256 ve sha512 değerleridir. Varsayılan değer sha1 değeridir.
  • -l: Arşivleme sırasında yerel cihazda kalır.
  • -P: Çıkartma sırasında sahipliği uid/gid değerlerine göre ayarlar. Çıkartılan dosya üzerinde uid/gid ayarlanabiliyorsa, setuid/setgid bitleri de korunur.
  • -p: Çıkartma sırasında sahipliği sembolik adlara göre ayarlar. Çıkartılan dosya üzerinde uid/gid ayarlanabiliyorsa, setuid/setgid bitleri de korunur.
  • -s <dosya_adı>: Çıkartma sırasında alt belgelerin çıkartılacağı dosyayı belirtir. Arşivleme sırasında alt belge olarak eklenecek bir XML dosyasını belirtir.
  • -v: Ayrıntılı çıktı üretir.
  • --exclude: Oluşturma sırasında arşive eklenmeyecek veya çıkartma sırasında çıkartılmayacak dosyaları belirten POSIX düzenli ifadesi tanımlar. Birden fazla kez belirtilebilir.
  • --rsize: Girdi/Çıktı işlemleri gerçekleştirilirken dahili libxar okuma arabelleği için bayt cinsinden boyut belirtir.
  • --coalesce-heap: Arşivdeki birden fazla dosya aynı olduğunda, verinin yığında (heap) yalnızca tek bir kopyasını saklar. Daha küçük arşivler oluşturur, ancak oluşturulan arşivler akışa uygun değildir.
  • --link-same: Birden fazla dosyanın veri bölümü aynı olduğunda, bunları arşiv içinde sabit bağ (hardlink) ile bağlar.
  • --no-compress: Arşivlenecek ancak sıkıştırılmayacak dosyaları belirten POSIX düzenli ifadesi tanımlar. Bu, zaten gzip ile sıkıştırılmış dosyaların tekrar gzip ile sıkıştırılmasını önlemek için kullanılabilir.
  • --prop-include: Arşive dahil edilecek bir dosya özelliğini belirtir. Bu seçenek belirtildiğinde, yalnızca belirtilen seçenekler dahil edilir. Birden fazla kez kullanılabilir.
  • --prop-exclude: Arşivden hariç tutulacak bir dosya özelliğini belirtir. Bu seçenek belirtildiğinde, belirtilen özellikler dışındaki tüm dosya özellikleri dahil edilir. Birden fazla kez kullanılabilir.
  • --distribution: Yalnızca dosya dağıtımı için güvenli olan dosya özelliklerini içeren bir arşiv oluşturur. Şu anda yalnızca name, type, mode ve data korunmaktadır.
  • --keep-existing: Çıkartma sırasında mevcut dosyaların üzerine yazmaz.
  • -k: --keep-existing seçeneğinin eş anlamlısıdır.
  • --keep-setuid: -p veya -P seçenekleri olmadan çıkartma yapıldığında temizlenen setuid/setgid bitlerini korur.

Örnekler

/home/uid dizinindeki tüm dosyaların bir xar arşivini oluşturur:

xar -cf sample.xar /home/uid

sample.xar arşivinin içeriğini listeler:

xar -tf sample.xar

sample.xar arşivinin içeriğini geçerli çalışma dizinine çıkartır:

xar -xf sample.xar

Hatalar

Şu anda boru hatları veya akışlar ile çalışmamaktadır. Gelecekteki bir sürümde düzeltilebilir.

Bir hata bulursanız http://code.google.com/p/xar/ adresine bildirin.

Yazarlar

  • Rob Braun
  • Landon Fuller
  • David Leimbach
  • Kevin Van Vechten