Tar comprimă de fapt fișierele sau le grupează?

De obicei am presupus că tar este un utilitar de compresie, dar nu sunt sigur, comprimă de fapt fișiere, sau este la fel ca un fișier ISO, un fișier pentru a păstra fișiere?

Comentarii

Răspuns

Tar este un instrument de arhivare (Tape ARchive), colectează numai fișiere și metadatele acestora împreună și produce un singur fișier. Dacă doriți să comprimați fișierul ulterior, puteți utiliza gzip / bzip2 / xz. Pentru comoditate, tar oferă argumente pentru a comprima automat arhiva. Verificați pagina manuală tar pentru mai multe detalii.

Comentarii

  • O ușoară clarificare asupra răspunsului. GNU tar oferă aceleași argumente suplimentare de compresie. De exemplu, Solaris tar nu oferă argumente pentru comprimare.
  • oooh, că ' este motivul pentru care văd în continuare thing.tar.7z
  • Tar BSD oferă și un argument pentru compresie, deși acceptă doar z și determină metoda de compresie pe baza extensiei, în timp ce tar GNU are zZjJ argumente pentru diferitele metode de compresie.
  • Citiți doar pagina de manual BS tar și se pare că m-am înșelat, BSD tar utilizează pentru compresie la fel ca GNU tar. Cu toate acestea, detectează automat compresia la decomprimare, în timp ce GNU tar așteaptă și zZjJ atunci.
  • @wingedsubmariner: nu; versiunile moderne ale GNU tar decomprimă automat fără a necesita opțiunile -zZjJ.

Răspuns

tar produce arhive; compresia este o funcționalitate separată. Totuși tar singur poate reduce utilizarea spațiului atunci când este utilizat pe un număr mare de fișiere mici care sunt mai mici decât dimensiunea clusterului sistemului de fișiere. Dacă un sistem de fișiere folosește 1kb clustere, chiar și un fișier care conține un singur octet va consuma 1kb (plus un inod). O arhivă tar nu are această cheltuială.

BTW, un ISO fișierul nu este într-adevăr „un fișier pentru păstrarea fișierelor” – este de fapt o imagine a unui întreg sistem de fișiere (unul conceput inițial pentru a fi utilizat pe CD-uri) și astfel structura sa este considerabil mai complexă.

Comentarii

  • De fapt, un fișier gol nu va consuma 1kb. Un fișier de 1-1023 octeți va fi.
  • @psusi deci pentru un fișier de octeți 1-1023 va consuma întotdeauna 1024, ceea ce duce la o irosire de 1023-1 octeți.

Răspuns

Comanda originală UNIX tar nu a comprimat arhivele. Așa cum s-a menționat într-un comentariu, Solaris tar nu „comprimă. Nici HP-UX, nici AIX, FWIW. Prin convenție, arhivele necomprimate se termină în .tar.

Cu GNU / Linux obțineți tar GNU. (Puteți instala GNU tar pe alte sisteme UNIX.) În mod implicit, nu se comprimă; totuși, nu comprimă arhiva rezultată cu gzip (de asemenea prin GNU) dacă furnizați -z. Sufixul convențional pentru fișierele gzipped este .gz, deci veți vedea adesea tarballs (argou pentru un tar arhivă, ceea ce implică, de obicei, „s-a comprimat) care se termină cu .tar.gz. Această finalizare implică că tarul a fost rulat, urmat de gzip, de ex. . Veți găsi, de asemenea, arhive care se termină cu .tgz, de ex tar czf archive.tgz ..

Editați: www.linfo.org/tar.html mi-a amintit că GNU tar acceptă mult mai multe funcționalități decât simpla comprimare cu gzip și mi-a amintit că sufixele sunt mai mult decât convenții simple. Au semantică încorporată. De asemenea, acceptă bzip2 (-j pentru .bz2) și compresul vechi (-Z pentru .Z). Apoi m-am uitat la pagina manuală și mi s-a reamintit că -a mapează automat metoda de compresie dorită pe baza sufixului.

Un alt nit. După cum spune pagina de tar Linux, GNU produce pagini de informații, nu pagini de manual, așa că pentru a afla totul despre GNU tar, rulați info tar.

Comentarii

  • Tarul GNU încă nu ' nu gestionează compresiile de la sine, ci doar țevile către / de la gzip, bzip2, comprimare și altele.
  • Am analizat sursa . GNU tar gestionează compresia! Implementarea profită de reutilizarea codului și de principiile arhitecturale ale spațiului utilizator UNIX. " Doar țevile " subestimă modul în care compresia este strâns integrată în instrument.Faptul că se întâmplă cu programele de asistență la furcă este o tehnicitate. Dacă doriți să apărați " doar țevi, " atunci citați numele fișierelor și numerele de linie și lăsați ' vedeți ce parte ia comunitatea.
  • Durează câteva zile până când pot verifica sursa respectivă.

Răspuns

utilitarul tar nu se comprimă până nu dați argumentul pentru a face acest lucru [numele fișierului tar -z].

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *