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

$ tar

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

teyp arşivlerini işleme

Özet

tar [bundled-flags ⟨args⟩] [⟨file⟩ | ⟨pattern⟩ ...]
tar {-c} [options] [files | directories]
tar {-r | -u} -f archive-file [options] [files | directories]
tar {-t | -x} [options] [patterns]

Açıklama

tar, akış arşiv dosyaları oluşturur ve bunları işler. Bu uygulama tar, pax, cpio, zip, jar, ar, xar, rpm, 7-zip ve ISO 9660 cdrom imajlarından çıkarma yapabilir; tar, pax, cpio, ar, zip, 7-zip ve shar arşivleri oluşturabilir.

İlk söz dizimi biçimi birleştirilmiş (bundled) bir seçenek sözcüğü gösterir. Bu kullanım, geçmişteki uygulamalarla uyumluluk sağlamak amacıyla sunulmuştur. Ayrıntılar için aşağıdaki Uyumluluk bölümüne bakın.

Diğer söz dizimi biçimleri tercih edilen kullanımı göstermektedir. tar için ilk seçenek, aşağıdaki listeden bir mod belirtecidir:

  • -c: Belirtilen öğeleri içeren yeni bir arşiv oluşturur. Uzun seçenek biçimi --create şeklindedir.
  • -r: -c gibidir, ancak yeni girdiler arşivin sonuna eklenir. Bunun yalnızca normal dosyalarda saklanan sıkıştırılmamış arşivlerde çalıştığını unutmayın. -f seçeneği zorunludur. Uzun seçenek biçimi --append şeklindedir.
  • -t: Arşiv içeriğini standart çıktıya (stdout) listeler. Uzun seçenek biçimi --list şeklindedir.
  • -u: -r gibidir, ancak yeni girdiler yalnızca arşivdeki ilgili girdiden daha yeni bir değiştirme tarihine sahiplerse eklenir. Bunun yalnızca normal dosyalarda saklanan sıkıştırılmamış arşivlerde çalıştığını unutmayın. -f seçeneği zorunludur. Uzun biçim --update şeklindedir.
  • -x: Arşivden diske çıkarma işlemi yapar. Aynı ada sahip bir dosya arşivde birden fazla kez yer alıyorsa, her bir kopya çıkarılır ve sonraki kopyalar öncekilerin üzerine yazılır. Uzun seçenek biçimi --extract şeklindedir.

-c, -r veya -u modunda, belirtilen her dosya veya dizin komut satırında belirtilen sırada arşive eklenir. Varsayılan olarak, her dizinin içeriği de arşivlenir.

Çıkarma veya listeleme modunda, arşiv açılmadan önce tüm komut satırı okunur ve çözümlenir. Komut satırındaki yol adları veya desenler, arşivdeki hangi öğelerin işleneceğini belirtir. Desenler, tcsh(1) belgesinde açıklandığı gibi kabuk tarzı eşleştirme (globbing) desenleridir.

Seçenekler

Aksi açıkça belirtilmedikçe seçenekler tüm çalışma modlarında geçerlidir.

  • @archive
    Yalnızca c ve r modlarında geçerlidir. Belirtilen arşiv açılır ve içindeki girdiler mevcut arşivin sonuna eklenir. Basit bir örnek:

    tar -c -f - newfile @original.tar

    Bu komut standart çıktıya newfile dosyasını ve original.tar dosyasındaki tüm girdileri içeren yeni bir arşiv yazar. Buna karşın:

    tar -c -f - newfile original.tar

    yalnızca iki girdisi olan yeni bir arşiv oluşturur. Benzer şekilde:

    tar -czf - --format pax @-

    standart girdiden biçimi otomatik olarak belirlenecek bir arşivi okur ve bunu standart çıktı üzerinde gzip ile sıkıştırılmış pax biçimli bir arşive dönüştürür. Bu sayede tar, arşivleri bir biçimden diğerine dönüştürmek için kullanılabilir.

  • -a, --auto-compress
    Yalnızca c modunda geçerlidir. Biçim ve sıkıştırma türüne karar vermek için arşiv uzantısını kullanır. Örnekler:

    tar -a -cf archive.tgz source.c source.h
    tar -a -cf archive.tar.bz2.uu source.c source.h
    tar -a -cf archive.zip source.c source.h
    tar -a -jcf archive.tgz source.c source.h
    tar -a -jcf archive.xxx source.c source.h

    İlk komut kısıtlanmış pax biçimi ve gzip sıkıştırmasıyla yeni bir arşiv oluşturur. İkinci komut kısıtlanmış pax biçimi, bzip2 sıkıştırması ve uuencode sıkıştırmasıyla yeni bir arşiv oluşturur. Üçüncü komut zip biçiminde yeni bir arşiv oluşturur. Dördüncü komut -j seçeneğini yoksayar ve kısıtlanmış pax biçimi ile gzip sıkıştırmasına sahip yeni bir arşiv oluşturur. Son komutta uzantı bilinmiyorsa veya uzantı yoksa, kısıtlanmış pax biçimi ve bzip2 sıkıştırmasıyla yeni bir arşiv oluşturulur.

  • --acls
    Yalnızca c, r, u ve x modlarında geçerlidir. POSIX.1e veya NFSv4 ACL'lerini arşivler veya çıkarır. Bu, --no-acls seçeneğinin tersidir ve c, r ve u modlarında (Mac OS X hariç) veya tar x modunda root olarak çalıştırıldığında varsayılan davranıştır. Mac OS X'te bu seçenek, genişletilmiş ACL'leri NFSv4 ACL'lerine dönüştürür. Genişletilmiş ACL'leri depolamak için --mac-metadata seçeneği tercih edilir.

  • -B, --read-full-blocks
    Diğer tar(1) uygulamalarıyla uyumluluk için yoksayılır.

  • -b blocksize, --block-size blocksize
    Teyp sürücüsü G/Ç işlemleri için 512 baytlık kayıtlar halinde blok boyutunu belirtir. Kural olarak, bu argümana yalnızca teyp sürücülerinden okuma yaparken veya bunlara yazarken ihtiyaç duyulur ve 20 kayıtlık (10240 bayt) varsayılan blok boyutu çok yaygın olduğundan genellikle o zaman bile gerekmez.

  • -C directory, --cd directory, --directory directory
    c ve r modunda, aşağıdaki dosyaları eklemeden önce dizini değiştirir. x modunda ise arşivi açtıktan sonra ancak arşivden girdileri çıkarmadan önce dizinleri değiştirir.

  • --chroot
    Yalnızca x modunda geçerlidir. Herhangi bir -C seçeneği işlendikten sonra ve herhangi bir dosya çıkarılmadan önce mevcut dizine chroot() yapar.

  • --clear-nochange-fflags
    Yalnızca x modunda geçerlidir. Dosya sistemi nesnelerini değiştirmek üzere kaldırmadan önce, kaldırılmalarını engelleyebilecek platforma özgü dosya özniteliklerini veya dosya bayraklarını temizler.

  • --exclude pattern
    Belirtilen desenle eşleşen dosya veya dizinleri işlemez. Dışlamaların, komut satırında belirtilen desenlere veya dosya adlarına göre öncelikli olduğunu unutmayın.

  • --exclude-vcs
    Arch, Bazaar, CVS, Darcs, Mercurial, RCS, SCCS, SVN ve git sürüm kontrol sistemleri tarafından dahili olarak kullanılan dosya veya dizinleri işlemez.

  • --fflags
    Yalnızca c, r, u ve x modlarında geçerlidir. Platforma özgü dosya özniteliklerini veya dosya bayraklarını arşivler veya çıkarır. Bu, --no-fflags seçeneğinin tersidir ve c, r ve u modlarında ya da tar x modunda root olarak çalıştırıldığında varsayılan davranıştır.

  • --format format
    Yalnızca c, r ve u modlarında geçerlidir. Oluşturulan arşiv için belirtilen biçimi kullanır. Desteklenen biçimler arasında cpio, pax, shar ve ustar yer alır. Diğer biçimler de destekleniyor olabilir; şu anda desteklenen biçimler hakkında daha fazla bilgi için libarchive-formats(5) sayfasına bakın. r ve u modlarında, mevcut bir arşivi genişletirken, burada belirtilen biçimin diskteki mevcut arşivin biçimiyle uyumlu olması gerekir.

  • -f file, --file file
    Arşivi belirtilen dosyadan okur veya belirtilen dosyaya yazar. Dosya adı, standart girdi veya standart çıktı için - olabilir. Varsayılan değer sisteme göre değişir; FreeBSD'de varsayılan /dev/sa0, Linux'ta varsayılan /dev/st0 değeridir.

  • --gid id
    Sağlanan grup kimlik (ID) numarasını kullanır. Çıkarma işleminde, bu arşivdeki grup kimliğini geçersiz kılar; arşivdeki grup adı yoksayılır. Oluşturma işleminde, bu diskten okunan grup kimliğini geçersiz kılar; --gname seçeneği de belirtilmemişse, grup adı grup kimliğiyle eşleşecek şekilde ayarlanır.

  • --gname name
    Sağlanan grup adını kullanır. Çıkarma işleminde, bu arşivdeki grup adını geçersiz kılar; sağlanan grup adı sistemde mevcut değilse, bunun yerine grup kimliği (arşivden veya --gid seçeneğinden alınan) kullanılır. Oluşturma işleminde, bu arşivde saklanacak grup adını belirler; ad sistem grup veritabanına karşı doğrulanmaz.

  • --group name[:gid]
    Sağlanan grubu kullanır. gid sağlanmazsa name bir grup adı veya sayısal kimlik olabilir. Ayrıntılar için --gname seçeneğine bakın.

  • -H
    Yalnızca c ve r modlarında geçerlidir. Komut satırında belirtilen sembolik bağlantılar takip edilir; bağlantının kendisi değil, bağlantının hedefi arşivlenir.

  • -h
    Yalnızca c ve r modlarında geçerlidir. -L seçeneğinin eş anlamlısıdır.

  • -I
    -T seçeneğinin eş anlamlısıdır.

  • --help
    Kullanımı gösterir.

  • --hfsCompression
    Yalnızca x modunda geçerlidir. Mac OS X'e özgüdür (v10.6 veya üzeri). Çıkarılan normal dosyaları HFS+ sıkıştırmasıyla sıkıştırır.

  • --ignore-zeros
    GNU tar ile uyumluluk için --options read_concatenated_archives seçeneğinin bir takma adıdır.

  • --include pattern
    Yalnızca belirtilen desenle eşleşen dosya veya dizinleri işler. --exclude ile belirtilen dışlamaların dahil etmelere göre öncelikli olduğunu unutmayın. Açıkça hiçbir dahil etme belirtilmemişse, varsayılan olarak tüm girdiler işlenir. Bu seçenek özellikle arşivleri filtrelerken kullanışlıdır:

    tar -c -f new.tar --include='*foo*' @old.tgz

    Bu komut old.tgz içindeki yalnızca foo dizesini içeren girdileri barındıran yeni bir new.tar arşivi oluşturur.

  • -J, --xz
    Yalnızca c modunda geçerlidir. Elde edilen arşivi xz(1) ile sıkıştırır. Çıkarma veya listeleme modlarında bu seçenek yoksayılır. Bu tar uygulaması, arşivleri okurken XZ sıkıştırmasını otomatik olarak tanır.

  • -j, --bzip, --bzip2, --bunzip2
    Yalnızca c modunda geçerlidir. Elde edilen arşivi bzip2(1) ile sıkıştırır. Çıkarma veya listeleme modlarında bu seçenek yoksayılır. Bu tar uygulaması, arşivleri okurken bzip2 sıkıştırmasını otomatik olarak tanır.

  • -k, --keep-old-files
    Yalnızca x modunda geçerlidir. Mevcut dosyaların üzerine yazmaz. Özellikle, bir dosya arşivde birden fazla kez görünüyorsa, sonraki kopyalar önceki kopyaların üzerine yazmaz.

  • --keep-newer-files
    Yalnızca x modunda geçerlidir. Çıkarılan arşivde görünen sürümlerden daha yeni olan mevcut dosyaların üzerine yazmaz.

  • -L, --dereference
    Yalnızca c ve r modlarında geçerlidir. Tüm sembolik bağlantılar takip edilir. Normalde sembolik bağlantılar doğrudan arşivlenir. Bu seçenekle, bunun yerine bağlantının hedefi arşivlenir.

  • -l, --check-links
    Yalnızca c ve r modlarında geçerlidir. Her dosyaya ait tüm bağlantılar arşivlenmedikçe bir uyarı mesajı verir.

  • --lrzip
    Yalnızca c modunda geçerlidir. Elde edilen arşivi lrzip(1) ile sıkıştırır. Çıkarma veya listeleme modlarında bu seçenek yoksayılır. Bu tar uygulaması, arşivleri okurken lrzip sıkıştırmasını otomatik olarak tanır.

  • --lz4
    Yalnızca c modunda geçerlidir. Yazmadan önce arşivi lz4 uyumlu sıkıştırma ile sıkıştırır. Çıkarma veya listeleme modlarında bu seçenek yoksayılır. Bu tar uygulaması, arşivleri okurken lz4 sıkıştırmasını otomatik olarak tanır.

  • --zstd
    Yalnızca c modunda geçerlidir. Yazmadan önce arşivi zstd uyumlu sıkıştırma ile sıkıştırır. Çıkarma veya listeleme modlarında bu seçenek yoksayılır. Bu tar uygulaması, arşivleri okurken zstd sıkıştırmasını otomatik olarak tanır.

  • --lzma
    Yalnızca c modunda geçerlidir. Elde edilen arşivi orijinal LZMA algoritmasıyla sıkıştırır. Çıkarma veya listeleme modlarında bu seçenek yoksayılır. Bu seçeneğin kullanılması önerilmez; yeni arşivler bunun yerine --xz ile oluşturulmalıdır. Bu tar uygulaması, arşivleri okurken LZMA sıkıştırmasını otomatik olarak tanır.

  • --lzop
    Yalnızca c modunda geçerlidir. Elde edilen arşivi lzop(1) ile sıkıştırır. Çıkarma veya listeleme modlarında bu seçenek yoksayılır. Bu tar uygulaması, arşivleri okurken LZO sıkıştırmasını otomatik olarak tanır.

  • -m, --modification-time
    Yalnızca x modunda geçerlidir. Değiştirme zamanını çıkarmaz. Varsayılan olarak değiştirme zamanı, arşivde saklanan zamana ayarlanır.

  • --mac-metadata
    Yalnızca c, r, u ve x modlarında geçerlidir. Mac OS X'e özgüdür. Genişletilmiş ACL'leri ve genişletilmiş dosya özniteliklerini AppleDouble biçiminde copyfile(3) kullanarak arşivler veya çıkarır. Bu, --no-mac-metadata seçeneğinin tersidir ve c, r ve u modlarında veya tar x modunda root olarak çalıştırıldığında varsayılan davranıştır. Şu anda yalnızca pax biçimleri için desteklenmektedir (bsdtar için varsayılan tar biçimi olan pax restricted dahil).

  • -n, --norecurse, --no-recursion
    Dizinlerin içeriği üzerinde özyinelemeli (recursive) olarak işlem yapmaz.

  • --newer date
    Yalnızca c, r ve u modlarında geçerlidir. Yalnızca belirtilen tarihten daha yeni olan dosya ve dizinleri dahil eder. Bu, ctime girdilerini karşılaştırır.

  • --newer-mtime date
    Yalnızca c, r ve u modlarında geçerlidir. mtime girdilerini ctime girdileri yerine karşılaştırması dışında --newer gibidir.

  • --newer-than file
    Yalnızca c, r ve u modlarında geçerlidir. Yalnızca belirtilen dosyadan daha yeni olan dosya ve dizinleri dahil eder. Bu, ctime girdilerini karşılaştırır.

  • --newer-mtime-than file
    Yalnızca c, r ve u modlarında geçerlidir. mtime girdilerini ctime girdileri yerine karşılaştırması dışında --newer-than gibidir.

  • --nodump
    Yalnızca c ve r modlarında geçerlidir. Bu dosyayı atlayarak nodump dosya bayrağına uyar.

  • --nopreserveHFSCompression
    Yalnızca x modunda geçerlidir. Mac OS X'e özgüdür (v10.6 veya üzeri). Arşivlenmeden önce HFS+ sıkıştırmasıyla sıkıştırılmış olan çıkarılan normal dosyaları sıkıştırmaz. Varsayılan olarak, normal dosyaları tekrar HFS+ sıkıştırmasıyla sıkıştırır.

  • --null
    -I veya -T ile kullanılır. Dosya adları veya desenler yeni satır karakterleriyle değil, null karakterleriyle ayrılır. Bu genellikle find(1) komutunun -print0 seçeneği tarafından çıktı olarak verilen dosya adlarını okumak için kullanılır.

  • --no-acls
    Yalnızca c, r, u ve x modlarında geçerlidir. POSIX.1e veya NFSv4 ACL'lerini arşivlemez veya çıkarmaz. Bu, --acls seçeneğinin tersidir ve tar x modunda root olmayan bir kullanıcı olarak çalıştırıldığında varsayılan davranıştır. Mac OS X'te c, r, u ve x modlarında herhangi bir kullanıcı için de varsayılan davranıştır.

  • --no-fflags
    Yalnızca c, r, u ve x modlarında geçerlidir. Dosya özniteliklerini veya dosya bayraklarını arşivlemez veya çıkarmaz. Bu, --fflags seçeneğinin tersidir ve tar x modunda root olmayan bir kullanıcı olarak çalıştırıldığında varsayılan davranıştır.

  • --no-mac-metadata
    Yalnızca x modunda geçerlidir. Mac OS X'e özgüdür. AppleDouble biçiminde copyfile(3) kullanarak ACL'leri ve genişletilmiş dosya özniteliklerini arşivlemez veya çıkarmaz. Bu, --mac-metadata seçeneğinin tersidir ve tar x modunda root olmayan bir kullanıcı olarak çalıştırıldığında varsayılan davranıştır.

  • --no-read-sparse
    Yalnızca c, r ve u modlarında geçerlidir. Seyrek (sparse) dosya bilgilerini diskten okumaz. Bu, --read-sparse seçeneğinin tersidir.

  • --no-safe-writes
    Yalnızca x modunda geçerlidir. Geçici dosyalar oluşturmaz ve orijinal dosyaları değiştirmek için rename(2) kullanmaz. Bu, --safe-writes seçeneğinin tersidir.

  • --no-same-owner
    Yalnızca x modunda geçerlidir. Sahip ve grup kimliklerini (ID) çıkarmaz. Bu, --same-owner seçeneğinin tersidir ve tar root olmayan bir kullanıcı olarak çalıştırıldığında varsayılan davranıştır.

  • --no-same-permissions
    Yalnızca x modunda geçerlidir. Tam izinleri (SGID, SUID, yapışkan bit [sticky bit], dosya öznitelikleri veya dosya bayrakları, genişletilmiş dosya öznitelikleri ve ACL'ler) çıkarmaz. Bu, -p seçeneğinin tersidir ve tar root olmayan bir kullanıcı olarak çalıştırıldığında varsayılan davranıştır.

  • --no-xattrs
    Yalnızca c, r, u ve x modlarında geçerlidir. Genişletilmiş dosya özniteliklerini arşivlemez veya çıkarmaz. Bu, --xattrs seçeneğinin tersidir ve tar x modunda root olmayan bir kullanıcı olarak çalıştırıldığında varsayılan davranıştır.

  • --numeric-owner
    Bu, --uname "" --gname "" seçeneğine eşdeğerdir. Çıkarma işleminde, arşivdeki kullanıcı ve grup adlarının sayısal kullanıcı ve grup kimlikleri lehine yoksayılmasına neden olur. Oluşturma işleminde, kullanıcı ve grup adlarının arşivde saklanmamasına neden olur.

  • -O, --to-stdout
    Yalnızca x ve t modlarında geçerlidir. Çıkarma (-x) modunda, dosyalar diske çıkarılmak yerine standart çıktıya yazılır. Listeleme (-t) modunda, dosya listesi her zamanki standart çıktı yerine standart hataya (stderr) yazılır.

  • -o
    x modunda, arşivde belirtilenler yerine programı çalıştıran kullanıcının kullanıcı ve grubunu kullanır. Bunun, -p belirtilmedikçe ve program root kullanıcısı tarafından çalıştırılmadıkça bir önemi yoktur. Bu durumda, arşivdeki dosya modları ve bayrakları geri yüklenir ancak arşivdeki ACL'ler veya sahip bilgileri atılır.

  • -o
    c, r ve u modlarında --format ustar seçeneğinin eş anlamlısıdır.

  • --older date
    Yalnızca c, r ve u modlarında geçerlidir. Yalnızca belirtilen tarihten daha eski olan dosya ve dizinleri dahil eder. Bu, ctime girdilerini karşılaştırır.

  • --older-mtime date
    Yalnızca c, r ve u modlarında geçerlidir. mtime girdilerini ctime girdileri yerine karşılaştırması dışında --older gibidir.

  • --older-than file
    Yalnızca c, r ve u modlarında geçerlidir. Yalnızca belirtilen dosyadan daha eski olan dosya ve dizinleri dahil eder. Bu, ctime girdilerini karşılaştırır.

  • --older-mtime-than file
    Yalnızca c, r ve u modlarında geçerlidir. mtime girdilerini ctime girdileri yerine karşılaştırması dışında --older-than gibidir.

  • --one-file-system
    c, r ve u modlarında bağlama (mount) noktalarını geçmez.

  • --options options
    Belirli modüller için isteğe bağlı davranışları seçer. Argüman, virgülle ayrılmış anahtar kelimeler ve değerler içeren bir metin dizesidir. Bunlar, bu biçimlerin nasıl davranacağını kontrol etmek için belirli biçimleri işleyen modüllere aktarılır. Her seçeneğin aşağıdaki biçimlerden biri vardır:

    key=value
    key
    !key
    module:key=value
    module:key
    module:!key

    key=value biçiminde, destekleyen her modülde anahtar belirtilen değere ayarlanır. Bu anahtarı desteklemeyen modüller bunu yoksayar. key biçimi, destekleyen her modülde anahtarı etkinleştirir ve key=1 değerine eşdeğerdir. !key biçimi, destekleyen her modülde anahtarı devre dışı bırakır. module: önekli biçimler ise ilgili anahtar ve değerin yalnızca adı module ile eşleşen modüllere sağlanmasına neden olur.

    Oluşturma ve ekleme modları için desteklenen modüllerin ve anahtarların tam listesi archive_write_set_options(3) belgesinde, çıkarma ve listeleme modları için ise archive_read_set_options(3) belgesinde yer almaktadır.

    Desteklenen seçenek örnekleri:

    • iso9660:joliet: Joliet uzantılarını destekler. Varsayılan olarak etkindir; devre dışı bırakmak için !joliet veya iso9660:!joliet kullanın.
    • iso9660:rockridge: Rock Ridge uzantılarını destekler. Varsayılan olarak etkindir; devre dışı bırakmak için !rockridge veya iso9660:!rockridge kullanın.
    • gzip:compression-level: Gzip sıkıştırma seviyesini belirten 1 ile 9 arasında bir ondalık tamsayı.
    • gzip:timestamp: Zaman damgasını saklar. Varsayılan olarak etkindir; devre dışı bırakmak için !timestamp veya gzip:!timestamp kullanın.
    • lrzip:compression=type: Sıkıştırma yöntemi olarak type değerini kullanır. Desteklenen değerler bzip2, gzip, lzo (ultra hızlı) ve zpaq (en iyi, son derece yavaş) şeklindedir.
    • lrzip:compression-level: Lrzip sıkıştırma seviyesini belirten 1 ile 9 arasında bir ondalık tamsayı.
    • lz4:compression-level: Lzop sıkıştırma seviyesini belirten 1 ile 9 arasında bir ondalık tamsayı.
    • lz4:stream-checksum: Akış sağlama toplamını (stream checksum) etkinleştirir. Varsayılan olarak etkindir; devre dışı bırakmak için lz4:!stream-checksum kullanın.
    • lz4:block-checksum: Blok sağlama toplamını (block checksum) etkinleştirir. Varsayılan olarak devre dışıdır.
    • lz4:block-size: Lz4 sıkıştırma bloğu boyutunu belirten 4 ile 7 arasında bir ondalık tamsayı. Varsayılan değer 7 değeridir.
    • lz4:block-dependence: Sıkıştırma oranını artırmak için bir sıkıştırma sözlüğü amacıyla sıkıştırılmakta olan bloğun önceki bloğunu kullanır.
    • zstd:compression-level=N: Zstd sıkıştırma seviyesini belirten bir ondalık tamsayı. Desteklenen değerler kütüphane sürümüne bağlıdır; yaygın değerler 1 ile 22 arasındadır.
    • zstd:threads=N: Kullanılacak çalışan iş parçacığı sayısını belirtir veya sistemdeki CPU çekirdeği sayısı kadar iş parçacığı kullanmak için 0 değerini alır.
    • zstd:frame-per-file: Arşivdeki her dosyanın başında yeni bir sıkıştırma çerçevesi (compression frame) başlatır.
    • zstd:min-frame-in=N: zstd:frame-per-file ile birlikte, mevcut çerçevenin sıkıştırılmamış boyutu en az N bayt olmadıkça yeni bir sıkıştırma çerçevesi başlatmaz. Sayının ardından sırasıyla kilobayt, megabayt veya gigabayt belirtmek için k / kB, M / MB veya G / GB gelebilir.
    • zstd:min-frame-out=N, zstd:min-frame-size=N: zstd:frame-per-file ile birlikte, mevcut çerçevenin sıkıştırılmış boyutu en az N bayt olmadıkça yeni bir sıkıştırma çerçevesi başlatmaz. Sayının ardından sırasıyla kilobayt, megabayt veya gigabayt belirtmek için k / kB, M / MB veya G / GB gelebilir.
    • zstd:max-frame-in=N, zstd:max-frame-size=N: Mevcut çerçevenin sıkıştırılmamış boyutu N baytı aşar aşmaz mümkün olan en kısa sürede yeni bir sıkıştırma çerçevesi başlatır. Sayının ardından sırasıyla kilobayt, megabayt veya gigabayt belirtmek için k / kB, M / MB veya G / GB gelebilir. 1024'ten küçük değerler reddedilir.
    • zstd:max-frame-out=N: Mevcut çerçevenin sıkıştırılmış boyutu N baytı aşar aşmaz mümkün olan en kısa sürede yeni bir sıkıştırma çerçevesi başlatır. Sayının ardından sırasıyla kilobayt, megabayt veya gigabayt belirtmek için k / kB, M / MB veya G / GB gelebilir. 1024'ten küçük değerler reddedilir.
    • lzop:compression-level: Lzop sıkıştırma seviyesini belirten 1 ile 9 arasında bir ondalık tamsayı.
    • xz:compression-level: Xz sıkıştırma seviyesini belirten 0 ile 9 arasında bir ondalık tamsayı.
    • xz:threads: Kullanılacak çalışan iş parçacığı sayısını belirtir. İş parçacığı sayısını özel bir değer olan 0 olarak ayarlamak, xz(1) komutunun sistemdeki CPU çekirdeği sayısı kadar iş parçacığı kullanmasını sağlar.
    • mtree:keyword: Mtree yazıcı modülü, çıktıya hangi mtree anahtar kelimelerinin dahil edileceğini belirtmenize olanak tanır. Desteklenen anahtar kelimeler cksum, device, flags, gid, gname, indent, link, md5, mode, nlink, rmd160, sha1, sha256, sha384, sha512, size, time, uid ve uname değerleridir. Varsayılan değer device, flags, gid, gname, link, mode, nlink, size, time, type, uid ve uname değerlerine eşdeğerdir.
    • mtree:all: Yukarıdaki anahtar kelimelerin tümünü etkinleştirir. Tüm anahtar kelimeleri devre dışı bırakmak için mtree:!all da kullanılabilir.
    • mtree:use-set: Çıktıda /set satırlarının oluşturulmasını etkinleştirir.
    • mtree:indent: Seçenekleri girintileyerek ve satırları 80 sütuna sığacak şekilde bölerek okunabilir çıktı üretir.
    • zip:compression=type: Sıkıştırma yöntemi olarak type değerini kullanır. Desteklenen değerler store (sıkıştırılmamış) ve deflate (gzip algoritması) şeklindedir.
    • zip:encryption: Geleneksel zip şifrelemesini kullanarak şifrelemeyi etkinleştirir.
    • zip:encryption=type: Şifreleme türü olarak type değerini kullanır. Desteklenen değerler zipcrypt (geleneksel zip şifrelemesi), aes128 (WinZip AES-128 şifrelemesi) ve aes256 (WinZip AES-256 şifrelemesi) şeklindedir.
    • read_concatenated_archives: Birden fazla tar arşivinin birbirine eklendiği durumlarda arşivdeki sıfırlanmış blokları yoksayar. Bu seçenek olmadan, yalnızca ilk eklenen arşivin içeriği okunurdu. GNU tar programının -i, --ignore-zeros seçeneğiyle karşılaştırılabilir.

    Sağlanan bir seçenek hiçbir modül tarafından desteklenmiyorsa, bu ölümcül bir hatadır.

  • -P, --absolute-paths
    Yol adlarını korur. Varsayılan olarak, mutlak yol adlarının (/ karakteriyle başlayanlar) başındaki bölü işareti hem arşiv oluşturulurken hem de arşivden çıkarılırken kaldırılır. Ayrıca tar, yol adları .. içeren veya hedef dizini bir sembolik bağlantı tarafından değiştirilecek olan arşiv girdilerini çıkarmayı reddeder. Bu seçenek bu davranışları bastırır.

  • -p, --insecure, --preserve-permissions
    Yalnızca x modunda geçerlidir. Dosya izinlerini korur. Arşivden çıkarılan her öğe için varsa dosya modları, dosya öznitelikleri veya dosya bayrakları, genişletilmiş dosya öznitelikleri ve ACL'ler dahil olmak üzere tüm izinleri geri yüklemeye çalışır. Bu, --no-same-permissions seçeneğinin tersidir ve tar root olarak çalıştırıldığında varsayılan davranıştır. Ayrıca --no-acls, --no-fflags, --no-mac-metadata veya --no-xattrs belirtilerek kısmen geçersiz kılınabilir.

  • --passphrase passphrase
    Parola, şifrelenmiş bir arşivi çıkarmak veya oluşturmak için kullanılır. Şu anda şifrelemeyi destekleyen tek biçim zip biçimidir. Bu seçeneğin kullanımının ne kadar güvensiz olduğunu anlamadıysanız bu seçeneği kullanmamalısınız.

  • --posix
    Yalnızca c, r ve u modlarında geçerlidir. --format pax seçeneğinin eş anlamlısıdır.

  • -q, --fast-read
    Yalnızca x ve t modlarında geçerlidir. Yalnızca her desen veya dosya adı işleneniyle eşleşen ilk arşiv girdisini çıkarır veya listeler. Belirtilen her desen veya dosya adı eşleştiği anda çıkış yapar. Varsayılan olarak, aynı ada sahip birden fazla girdi olabileceğinden ve kurallara göre sonraki girdiler öncekilerin üzerine yazıldığından arşiv her zaman sonuna kadar okunur. Bu seçenek bir performans optimizasyonu olarak sunulmuştur.

  • --read-sparse
    Yalnızca c, r ve u modlarında geçerlidir. Seyrek dosya bilgilerini diskten okur. Bu, --no-read-sparse seçeneğinin tersidir ve varsayılan davranıştır.

  • -S
    Yalnızca x modunda geçerlidir. Dosyaları seyrek dosyalar olarak çıkarır. Diskteki her blok için önce yalnızca NULL baytlar içerip içermediğini kontrol eder ve içermiyorsa üzerinden atlar (seek). Bu, dd komutunun conv=sparse seçeneğine benzer şekilde çalışır.

  • -s pattern
    Dosya veya arşiv üye adlarını desene (pattern) göre değiştirir. Desen /eski/yeni/[bghHprRsS] biçimindedir. eski temel bir düzenli ifade (regular expression), yeni ise eşleşen kısmın yerine geçecek dizedir. İsteğe bağlı sondaki harfler değiştirme işleminin nasıl ele alınacağını değiştirir. eski eşleşmezse desen atlanır. yeni içinde ~ eşleşmeyle, \1 ile \9 ise ilgili yakalanan grubun içeriğiyle değiştirilir.

    İsteğe bağlı sondaki g, eşleştirmenin eşleşen kısımdan sonra devam etmesini ve ilk eşleşmeyen desende durmasını belirtir. s, desenin sembolik bağlantıların değerine uygulanacağını belirtir. p, başarılı bir değiştirmeden sonra orijinal yol adının ve yeni yol adının standart hataya yazdırılacağını belirtir. b, değiştirmenin önceki eşleşen değiştirmenin bittiği konumun hemen sonrasından değil, dizenin başından itibaren eşleşmesi gerektiğini belirtir.

    İsteğe bağlı sondaki H, R veya S karakterleri sırasıyla sabit bağlantı (hardlink) hedefleri, normal dosya adları veya sembolik bağlantı hedefleri için değiştirmeleri bastırır. İsteğe bağlı sondaki h, r veya s karakterleri sırasıyla sabit bağlantı hedefleri, normal dosya adları veya sembolik bağlantı hedefleri için değiştirmeleri etkinleştirir. Varsayılan değer, tüm adlara değiştirmeleri uygulayan hrs şeklindedir. Özellikle, h, r veya s belirtmek hiçbir zaman gerekli değildir.

  • --safe-writes
    Yalnızca x modunda geçerlidir. Dosyaları atomik olarak çıkarır. Varsayılan olarak tar, çıkarılan dosyayla aynı ada sahip orijinal dosyayı (varsa) siler (unlink) ve ardından hemen aynı ad altında oluşturarak içine yazar. Kısa bir süre için, dosyaya erişmeye çalışan uygulamalar dosyayı bulamayabilir veya eksik sonuçlar görebilir. --safe-writes etkinleştirilirse, tar önce benzersiz bir geçici dosya oluşturur, ardından yeni içeriği bu geçici dosyaya yazar ve son olarak geçici dosyayı rename(2) kullanarak atomik olarak nihai adına yeniden adlandırır. Bu, dosyaya erişen bir uygulamanın her zaman eski içeriği ya da yeni içeriği görmesini garanti eder.

  • --same-owner
    Yalnızca x modunda geçerlidir. Sahip ve grup kimliklerini (ID) çıkarır. Bu, --no-same-owner seçeneğinin tersidir ve tar root olarak çalıştırıldığında varsayılan davranıştır.

  • --strip-components count
    Belirtilen sayıda baştaki yol öğesini kaldırır. Daha az öğeye sahip yol adları sessizce atlanır. Yol adının dahil etme/dışlama desenleri kontrol edildikten sonra ancak güvenlik kontrollerinden önce düzenlendiğini unutmayın.

  • -T filename, --files-from filename
    x veya t modunda tar, çıkarılacak adların listesini filename dosyasından okur. c modunda tar, arşivlenecek adları filename dosyasından okur. Kendi başına bir satırda yer alan özel -C adı, mevcut dizinin bir sonraki satırda belirtilen dizinle değiştirilmesine neden olur. --null belirtilmedikçe adlar yeni satırlarla sonlandırılır. --null seçeneğinin, -C içeren satırların özel olarak ele alınmasını da devre dışı bıraktığını unutmayın. find(1) kullanarak dosya listeleri oluşturuyorsanız, muhtemelen -n seçeneğini de kullanmak istersiniz.

  • --totals
    Yalnızca c, r ve u modlarında geçerlidir. Tüm dosyaları arşivledikten sonra standart hataya (stderr) bir özet yazdırır.

  • -U, --unlink, --unlink-first
    Yalnızca x modunda geçerlidir. Dosyaları oluşturmadan önce siler (unlink). Dosyaların çoğu zaten mevcutsa bu küçük bir performans optimizasyonu olabilir, ancak dosyaların çoğu zaten mevcut değilse işleri yavaşlatabilir. Bu bayrak ayrıca tar programının bir hata bildirmek yerine aradaki dizin sembolik bağlantılarını kaldırmasına neden olur. Daha fazla ayrıntı için aşağıdaki Güvenlik bölümüne bakın.

  • --uid id
    Sağlanan kullanıcı kimlik (ID) numarasını kullanır ve arşivdeki kullanıcı adını yoksayar. Oluşturma işleminde, --uname seçeneği de belirtilmemişse, kullanıcı adı kullanıcı kimliğiyle eşleşecek şekilde ayarlanır.

  • --uname name
    Sağlanan kullanıcı adını kullanır. Çıkarma işleminde, bu arşivdeki kullanıcı adını geçersiz kılar; sağlanan kullanıcı adı sistemde mevcut değilse yoksayılır ve bunun yerine kullanıcı kimliği (arşivden veya --uid seçeneğinden alınan) kullanılır. Oluşturma işleminde, bu arşivde saklanacak kullanıcı adını belirler; ad sistem kullanıcı veritabanına karşı doğrulanmaz.

  • --use-compress-program program
    Yerleşik sıkıştırma desteğini kullanmak yerine girdiyi (x veya t modunda) ya da çıktıyı (c modunda) program aracılığıyla yönlendirir (pipe).

  • --owner name[:uid]
    Sağlanan kullanıcıyı kullanır. uid sağlanmazsa name bir kullanıcı adı veya sayısal kimlik olabilir. Ayrıntılar için --uname seçeneğine bakın.

  • -v, --verbose
    Ayrıntılı çıktı üretir. Oluşturma ve çıkarma modlarında tar, arşivden okunurken veya arşive yazılırken her dosya adını listeler. Listeleme modunda tar, ls(1) komutuna benzer bir çıktı üretir. Ek bir -v seçeneği, oluşturma ve çıkarma modunda da ls benzeri ayrıntılar sağlar.

  • --version
    tar ve libarchive sürümünü yazdırır ve çıkış yapar.

  • -w, --confirmation, --interactive
    Her işlem için onay ister.

  • -X filename, --exclude-from filename
    Belirtilen dosyadan dışlama desenlerinin bir listesini okur. Dışlamaların işlenmesi hakkında daha fazla bilgi için --exclude seçeneğine bakın.

  • --xattrs
    Yalnızca c, r, u ve x modlarında geçerlidir. Genişletilmiş dosya özniteliklerini arşivler veya çıkarır. Bu, --no-xattrs seçeneğinin tersidir ve c, r ve u modlarında veya tar x modunda root olarak çalıştırıldığında varsayılan davranıştır.

  • -y
    Yalnızca c modunda geçerlidir. Elde edilen arşivi bzip2(1) ile sıkıştırır. Çıkarma veya listeleme modlarında bu seçenek yoksayılır. Bu tar uygulaması, arşivleri okurken bzip2 sıkıştırmasını otomatik olarak tanır.

  • -Z, --compress, --uncompress
    Yalnızca c modunda geçerlidir. Elde edilen arşivi compress(1) ile sıkıştırır. Çıkarma veya listeleme modlarında bu seçenek yoksayılır. Bu tar uygulaması, arşivleri okurken compress sıkıştırmasını otomatik olarak tanır.

  • -z, --gunzip, --gzip
    Yalnızca c modunda geçerlidir. Elde edilen arşivi gzip(1) ile sıkıştırır. Çıkarma veya listeleme modlarında bu seçenek yoksayılır. Bu tar uygulaması, arşivleri okurken gzip sıkıştırmasını otomatik olarak tanır.

Ortam

Aşağıdaki ortam değişkenleri tar komutunun yürütülmesini etkiler:

  • TAR_READER_OPTIONS: Biçim okuyucuları ve sıkıştırma okuyucuları için varsayılan seçenekler. --options seçeneği bunu geçersiz kılar.
  • TAR_WRITER_OPTIONS: Biçim yazıcıları ve sıkıştırma yazıcıları için varsayılan seçenekler. --options seçeneği bunu geçersiz kılar.
  • LANG: Kullanılacak dil ayarı (locale). Daha fazla bilgi için environ(7) belgesine bakın.
  • TAPE: Varsayılan aygıt. -f seçeneği bunu geçersiz kılar. Daha fazla ayrıntı için yukarıdaki -f seçeneğinin açıklamasına bakın.
  • TZ: Tarihleri görüntülerken kullanılacak saat dilimi. Daha fazla bilgi için environ(7) belgesine bakın.

Çıkış Durumu

tar aracı başarı durumunda 0, bir hata oluşursa >0 değeriyle çıkış yapar.

Örnekler

source.c ve source.h adında iki dosya içeren file.tar.gz adında yeni bir arşiv oluşturur:

tar -czf file.tar.gz source.c source.h

Bu arşivin ayrıntılı içindekiler tablosunu görüntüler:

tar -tvf file.tar.gz

Varsayılan teyp sürücüsündeki arşivden tüm girdileri çıkarır:

tar -x

Bir ISO 9660 cdrom imajının içeriğini inceler:

tar -tf image.iso

Dosya hiyerarşilerini taşımak için:

tar -cf - -C srcdir . | tar -xpf - -C destdir

Daha geleneksel kullanım:

cd srcdir
tar -cf - . | (cd destdir ; tar -xpf -)

Oluşturma modunda, arşivlenecek dosya ve dizinlerin listesi -Cfoo/baz biçiminde dizin değiştirme talimatlarını ve @archive-file biçiminde arşiv dahil etmelerini de içerebilir:

tar -c -f new.tar foo1 @old.tgz -C/tmp foo2

Bu komut yeni bir new.tar arşivi oluşturur. tar, geçerli dizinden foo1 dosyasını okur ve çıktı arşivine ekler. Ardından old.tgz dosyasındaki her bir girdiyi okur ve bu girdileri çıktı arşivine ekler. Son olarak /tmp dizinine geçiş yapar ve foo2 dosyasını çıktı arşivine ekler.

mtree(5) biçimindeki bir girdi dosyası, diskteki mevcut verilerden farklı olan keyfi sahiplik, izinler veya adlara sahip bir çıktı arşivi oluşturmak için kullanılabilir:

cat input.mtree
#mtree
usr/bin uid=0 gid=0 mode=0755 type=dir
usr/bin/ls uid=0 gid=0 mode=0755 type=file content=myls
tar -cvf output.tar @input.mtree

--newer ve --newer-mtime anahtarları, 12 Mar 2005 7:14:29pm, 2005-03-12 19:14, 5 minutes ago ve 19:14 PST May 1 dahil olmak üzere çeşitli yaygın tarih ve saat belirtimlerini kabul eder.

--options argümanı, arşiv oluşturma veya okuma işlemlerinin çeşitli ayrıntılarını kontrol etmek için kullanılabilir. Örneğin, yalnızca type, time ve uid anahtar kelimelerini içeren mtree çıktısı üretebilirsiniz:

tar -cf file.tar --format=mtree --options='!all,type,time,uid' dir

Gzip ya da xz sıkıştırması tarafından kullanılan sıkıştırma seviyesini ayarlayabilirsiniz:

tar -czf file.tar --options='compression-level=9'

Daha fazla ayrıntı için archive_read(3) ve archive_write(3) belgelerinde açıklanan archive_read_set_options() ve archive_write_set_options() API çağrılarının açıklamasına bakın.

Uyumluluk

Birleştirilmiş argümanlar (bundled-arguments) biçimi, geçmişteki uygulamalarla uyumluluk sağlamak amacıyla desteklenmektedir. Başında - karakteri olmayan ve her karakterin bir seçeneği belirttiği bir başlangıç sözcüğünden oluşur. Argümanlar ayrı sözcükler olarak takip eder. Argümanların sırası, birleştirilmiş komut sözcüğündeki ilgili karakterlerin sırasıyla eşleşmelidir. Örneğin:

tar tbf 32 file.tar

Bu komut t, b ve f olmak üzere üç bayrak belirtir. b ve f bayraklarının her ikisi de argüman gerektirir, bu nedenle komut satırında iki ek öğe bulunmalıdır. 32, b bayrağının argümanıdır ve file.tar, f bayrağının argümanıdır.

c, r, t, u ve x mod seçenekleri ile b, f, l, m, o, v ve w seçenekleri SUSv2 ile uyumludur.

Maksimum taşınabilirlik için, tar komutunu çağıran betikler yukarıdaki birleştirilmiş argüman biçimini kullanmalı, kendilerini c, t ve x modları ile b, f, m, v ve w seçenekleriyle sınırlandırmalıdır.

Diğer tar uygulamalarıyla uyumluluğu artırmak için ek uzun seçenekler sunulmuştur.

Güvenlik

tar da dahil olmak üzere birçok arşivleme programında belirli güvenlik sorunları ortaktır. Özellikle, özenle hazırlanmış arşivler tar programının dosyaları hedef dizinin dışındaki konumlara çıkarmasını talep edebilir. Bu durum, farkında olmayan kullanıcıların üzerine yazmak istemedikleri dosyaların üzerine yazılmasına neden olmak için potansiyel olarak kullanılabilir. Arşiv süper kullanıcı (superuser) tarafından çıkarılıyorsa, sistemdeki herhangi bir dosyanın üzerine yazılması potansiyel olarak mümkündür.

Bunun gerçekleşebileceği üç yol vardır. tar her birine karşı koruma mekanizmalarına sahip olsa da, bilinçli kullanıcılar bunların sonuçlarının farkında olmalıdır:

  • Arşiv girdileri mutlak yol adlarına sahip olabilir. Varsayılan olarak tar, bu soruna karşı korunmak için dosyaları geri yüklemeden önce dosya adlarının başındaki / karakterini kaldırır.
  • Arşiv girdileri .. bileşenleri içeren yol adlarına sahip olabilir. Varsayılan olarak tar, yol adında .. bileşenleri içeren dosyaları çıkarmaz.
  • Arşiv girdileri, dosyaları diğer dizinlere geri yüklemek için sembolik bağlantıları kötüye kullanabilir. Bir arşiv, başka bir dizine giden bir sembolik bağlantıyı geri yükleyebilir, ardından o dizine bir dosya geri yüklemek için bu bağlantıyı kullanabilir. Buna karşı korunmak için tar, çıkarılan her yolu sembolik bağlantılar açısından kontrol eder. Son yol öğesi bir sembolik bağlantıysa, kaldırılır ve yerine arşiv girdisi yerleştirilir. -U belirtilirse, aradaki herhangi bir sembolik bağlantı da koşulsuz olarak kaldırılır. Ne -U ne de -P belirtilmişse, tar girdiyi çıkarmayı reddeder.

Kendinizi korumak için, güvenilmeyen kaynaklardan gelen arşivlere karşı temkinli olmalısınız. Çıkarmadan önce bir arşivin içeriğini şu komutla incelemelisiniz:

tar -tf filename

tar programının mevcut dosyaların üzerine yazmayacağından emin olmak için -k seçeneğini veya önceden var olan dosyaları kaldırmak için -U seçeneğini kullanmalısınız. Genelde, süper kullanıcı yetkileriyle çalışırken arşivleri çıkarmamalısınız. tar komutuna verilen -P seçeneğinin yukarıdaki güvenlik kontrollerini devre dışı bıraktığını ve herhangi bir mutlak yol adını, .. bileşenini veya diğer dizinlere giden sembolik bağlantıları koruyarak bir arşivi çıkarmanıza izin verdiğini unutmayın.

Ayrıca Bakınız

bzip2(1), compress(1), cpio(1), gzip(1), pax(1), shar(1), xz(1), libarchive(3), libarchive-formats(5), tar(5)

Standartlar

tar komutu için güncel bir POSIX standardı yoktur; ISO/IEC 9945-1:1996 ("POSIX.1") standardında yer almış ancak IEEE Std 1003.1-2001 ("POSIX.1") standardından çıkarılmıştır. Bu uygulama tarafından desteklenen seçenekler, bir dizi mevcut tar uygulamasının yanı sıra tar için eski POSIX belirtimi ve pax için mevcut POSIX belirtimi incelenerek geliştirilmiştir.

ustar ve pax değişim dosya biçimleri, pax komutu için IEEE Std 1003.1-2001 ("POSIX.1") tarafından tanımlanmıştır.

Tarihçe

İlk tar komutu, Ocak 1979'da yayınlanan Seventh Edition Unix'te yer almıştır. Birçoğu dosya biçimini genişleten sayısız başka uygulama olmuştur. John Gilmore'un pdtar kamu malı (public-domain) uygulaması (Kasım 1987 civarı) oldukça etkili olmuş ve GNU tar'ın temelini oluşturmuştur. GNU tar, FreeBSD 1.0'dan başlayarak FreeBSD'de standart sistem tar'ı olarak dahil edilmiştir.

Bu, libarchive(3) kütüphanesine dayanan tamamen yeniden yapılmış bir uygulamadır. İlk olarak Mayıs 2005'te FreeBSD 5.4 ile birlikte yayınlanmıştır.

Hatalar

Bu program, -l seçeneğinin tanımı için ISO/IEC 9945-1:1996 ("POSIX.1") standardını takip eder. Sürüm 1.15'ten önceki GNU tar'ın -l seçeneğini --one-file-system seçeneğinin eş anlamlısı olarak kabul ettiğini unutmayın.

-C dir seçeneği geçmişteki uygulamalardan farklı olabilir.

Çıktı sıkıştırılıyor olsa bile, tüm arşiv çıktısı doğru boyuttaki bloklar halinde yazılır. Son çıktı bloğunun tam bir blok boyutuna tamamlanıp tamamlanmayacağı (padding), biçime ve çıktı aygıtına bağlı olarak değişir. tar ve cpio biçimleri için, çıktı standart çıktıya veya bir teyp sürücüsü gibi bir karakter ya da blok aygıtına yazılıyorsa, çıktının son bloğu tam bir blok boyutuna tamamlanır. Çıktı normal bir dosyaya yazılıyorsa, son blok tamamlanmaz. gzip(1) ve bzip2(1) dahil olmak üzere birçok sıkıştırıcı, tar tarafından oluşturulmuş bir arşivi açarken null tamamlamasından (null padding) şikayet eder, ancak yine de arşivi doğru bir şekilde çıkarırlar.

Sıkıştırma ve açma işlemleri dahili olarak uygulanır, bu nedenle:

tar -czf - file

tarafından üretilen sıkıştırılmış çıktı ile:

tar -cf - file | gzip

tarafından üretilen çıktı arasında önemsiz farklar olabilir.

Varsayılan olarak arşivlerin standart G/Ç yollarına okunması ve yazılması gerekir, ancak gelenek (ve POSIX) aksini dikte eder.

r ve u modları, arşivin sıkıştırılmamış olmasını ve diskteki normal bir dosyada bulunmasını gerektirir. Diğer arşivler, @archive-file uzantısıyla c modu kullanılarak değiştirilebilir.

@foo veya -foo adındaki bir dosyayı arşivlemek için bunu sırasıyla ./@foo veya ./-foo olarak belirtmelisiniz.

Oluşturma modunda, baştaki ./ her zaman kaldırılır. -P seçeneği belirtilmediği sürece baştaki / işareti kaldırılır.

Hem oluşturma hem de çıkarma işlemlerinde dosya seçimi için daha iyi bir destek gerekmektedir.

Çok ciltli (multi-volume) arşivler için henüz bir destek yoktur.

@- kuralını kullanarak benzer olmayan arşiv biçimleri (tar ve cpio gibi) arasında dönüştürme yapmak, sabit bağlantı (hard link) bilgilerinin kaybolmasına neden olabilir. Bu durum, farklı arşiv biçimlerinin sabit bağlantı bilgilerini saklama şekillerinin birbiriyle uyumsuz olmasının bir sonucudur.