Cum se dezarhivează un fișier tar.gz
Dacă utilizați software open source, este posibil să întâlniți un fișier .tar la un moment dat. Utilitarul open source arhivă tar există din 1979 , deci este cu adevărat omniprezent în lumea POSIX. Scopul său este simplu: ia unul sau mai multe fișiere și le „înfășoară” într-un fișier autonom, numit arhivă de bandă, deoarece atunci când a fost inventat tar a fost folosit pentru a plasa date pe casete de stocare.
Persoanele noi în formatul tar îl echivalează de obicei cu un fișier .zip, dar o arhivă tar nu este în mod special comprimată. Formatul tar reprezintă doar un container pentru fișiere, dar fișierele pot fi comprimate cu utilități separate. Compresiile obișnuite aplicate unui fișier .tar sunt Gzip, bzip2 și xz. De aceea rareori vedeți doar un fișier .tar și întâlniți mai frecvent fișiere .tar.gz sau .tgz.
Instalarea tar
Pe Linux, BSD, Illumos și chiar Mac OS, comanda tar este deja instalată pentru dvs.
Pe Windows, cel mai simplu mod de a gestiona fișierele .tar este de a insta ll utilitarul open source LGPL 7-Zip. Numele său îl implică „un utilitar zip, dar funcționează și cu arhivele tar și oferă chiar comenzi pentru interfața liniei de comandă cmd.
Dacă doriți cu adevărat un utilitar tar real pe Windows, GNU tar este instalabil prin WSL pe Windows 10 sau prin Cygwin.
Crearea unui tarball
O arhivă tar este adesea denumită tarball, probabil pentru că noi hackerilor le place să scurteze cuvintele la cât mai puține silabe pe cât posibil, iar „tarball” este mai scurt și mai ușor decât „arhiva tar.”
Într-o GUI, crearea unui tarball este, cel mult, un proces în trei pași. Folosesc KDE, dar procesul este în esență același pe Gnome sau XFCE:
- Creați un director
- Plasați fișierele în director
- Faceți clic dreapta pe director și selectați „Comprimare”
compress.jpg
Crearea unui tarball
Într-un shell, este practic același proces.
A aduna un gr oup de fișiere într-o singură arhivă, plasați fișierele într-un director și apoi invocați tar, oferind un nume pentru arhiva pe care doriți să o creați și directorul pe care doriți să îl arhivați:
Utilitarul tar este unic printre comenzi, deoarece nu necesită liniuțe în fața opțiunilor sale scurte, permițând utilizatorilor avansați să abrevieze comenzi complexe de genul acesta:
Nu trebuie să introduceți fișiere într-un director înainte de a le arhiva, dar nu este considerat o etichetă slabă, deoarece nimeni nu dorește 50 de fișiere împrăștiate pe desktop-ul lor atunci când dezarhivează un director. Aceste tipuri de arhive sunt uneori numite tarbomb, deși nu întotdeauna cu o conotație negativă. Tarbombs sunt utile pentru patch-uri și instalatori de software; este doar o chestiune de a ști când să le folosești și când să le eviți.
Comprimarea arhivelor
Crearea unei arhive tar nu vă comprimă fișierele, ci doar le face mai ușor să deplasați-vă ca un singur blob. Pentru compresie, puteți avea tar apel Gzip sau bzip:
$ tar --create --bzip2 --file foo.tar.bz2 myfiles
$ tar --create --gzip --file foo.tar.gz myfiles
Extensiile obișnuite sunt tar.gz și .tgz pentru un tar Gzipped file, și .tbz și .tar.bz2 pentru un fișier tar bzipped.
Extragerea arhivelor
Dacă ați primit un tarball de la un prieten sau un proiect software, puteți extrage fie în desktopul dvs. GUI, fie într-un shell. Într-o interfață grafică, faceți clic dreapta pe arhiva pe care doriți să o extrageți și selectați „Extrageți”.
extract_0.jpg
Extragerea unei arhive
Managerul de fișiere Dolphin oferă o caracteristică pentru a detecta automat dacă fișierele extrase dintr-o arhivă sunt conținute într-un director sau dacă trebuie creat un nou director pentru acestea. Folosesc această opțiune astfel încât atunci când extrag fișiere dintr-o tarbomb, acestea să rămână ordonate și conținute.
Într-un shell, comanda pentru extragerea unei arhive este destul de intuitivă:
Utilizatorii avansați scurtează acest lucru la:
Puteți folosi chiar utilitarul tar pentru a dezarhiva fișierele .zip:
Tar avansat
Utilitățile tar sunt foarte robuste și flexibile. Odată ce vă simțiți confortabil cu elementele de bază, este util să explorați alte caracteristici.
Adăugați un fișier sau un director la un tarball existent
Dacă aveți un tarball existent și doriți să adăugați un fișier nou în el, nu trebuie să dezarhivați totul doar pentru a adăuga un fișier nou.
Majoritatea desktopurilor Linux și BSD vin cu un utilitar de arhivare grafică. Folosind acesta, puteți deschide o arhivă tar ca și cum ar fi orice alt director, aruncă o privire în interior, extrage fișiere individuale, adaugă fișiere la acesta și chiar previzualizează fișierele text și imaginile pe care le conține.
ark.jpg
Utilitarul Arhiva Ark
În shell, puteți adăuga un fișier sau un director într-o arhivă tar, atâta timp cât nu este comprimat. Dacă arhiva dvs. a fost comprimată, trebuie să o decomprimați, dar nu trebuie să o dezarhivați.
De exemplu, dacă o arhivă a fost comprimată cu Gzip:
$ gunzip archive.tar.gz
$ ls
archive.tar
Acum că aveți o arhivă tar necomprimată, adăugați un fișier și un director la ea:
$ tar --append --file archive.tar foo.txt
$ tar --append --file archive.tar bar/
Versiunea mai scurtă:
$ tar rf archive.tar foo.txt
$ tar rf archive.tar bar/
Vizualizați o listă de fișiere dintr-un tarball
Pentru a vedea fișierele dintr-o arhivă, comprimate sau necomprimate, utilizați – opțiune listă:
$ tar --list --file archive.tar.gz
myfiles/
myfiles/one
myfiles/two
myfiles/three
bar/
bar/four
foo.txt
Utilizatorii avansați scurtează acest lucru la:
Extrageți doar una fișier sau director
Uneori nu aveți nevoie de toate fișierele dintr-o arhivă, doriți doar să extrageți unul sau două. După enumerarea conținutului unei arhive tar, utilizați comanda obișnuită de extracție tar împreună cu calea fișierului pe care doriți să îl extrageți:
$ tar xvf archive.tar.gz bar/four
bar/four
Extragerea mai multor fișiere sau directoare este practic aceeași:
$ tar xvf archive.tar.gz myfiles/one bar/four
myfiles/one
bar/four
Puteți folosi chiar și metacaractere:
$ tar xvf archive.tar.gz --wildcards "*.txt"
foo.txt
Extrageți un tarball într-un alt director
Anterior, am menționat că unele tarball-uri erau tarbomb-uri care au plecat fișiere împrăștiate în jurul computerului. Dacă listați o arhivă tar și vedeți că fișierele sale nu sunt conținute într-un director, puteți crea un director de destinație pentru acestea:
$ tar --list --file archive.tar.gz
foo
bar
baz
$ mkdir newfiles
$ tar xvf archive.tar.gz -C newfiles
Aceasta plasează toate fișierele din arhivă în directorul „newfiles”.
Opțiunea director de destinație este utilă pentru mult mai mult decât păstrarea ordonată a fișierelor extrase, de exemplu, distribuirea fișierelor care sunt destinate a fi copiate într-un structura de director existentă. Dacă lucrați pe un site web și doriți să trimiteți administratorului câteva fișiere noi, îl puteți face în câteva moduri diferite. Modul evident este să trimiteți fișierele către administratorul site-ului împreună cu un text care să explice unde trebuie să fie fiecare fișier. plasat: „Fișierul index.php atașat intră în /var/www/example.com/store, iar fișierul vouchers.php intră în /var/www/example.com/deals …”
Modul mai eficient ar fi crearea unei arhive tar:
Având în vedere această structură, administratorul site-ului ar putea extrage arhiva primită direct în directorul rădăcină al serverului. Utilitarul tar detectează în mod automat existența /var/www/example.com, precum și a subdirectoarelor, a ofertelor și a imaginilor și distribuie fișierele în directoarele corespunzătoare. Copierea și lipirea în bloc, realizată rapid și ușor.
GNU tar și BSD tar
Formatul tar este doar un format și este un format deschis, așa că poate fi creat de mai mult de un singur instrument.
Există două utilitare tar comune: utilitarul tar GNU, instalat implicit pe sistemele Linux și utilitarul tar BSD, instalat implicit pe BSD, Mac OS , și unele sisteme Linux. Pentru uz general, fie gudronul va face. Toate exemplele din acest articol funcționează la fel fie cu GNU, fie cu BSD tar, de exemplu. Cu toate acestea, cele două utilitare au unele diferențe minore, așa că, odată ce vă veți simți confortabil cu unul, ar trebui să încercați celălalt.
Probabil va trebui să instalați „celălalt” tar (oricare ar fi sistemul dvs.) manual. Pentru a evita confuzia între utilități, GNU tar este deseori denumit gtar, iar BSD tar este denumit bsdtar, comanda tar fiind un link simbolic sau un alias la cel care a fost preinstalat pe computerul dvs.