Kreiranje i upravljanje arhivskim fajlovima u Linux-u
Arhiva bi mogla da se jednostavno definiše kao fajl koji u sebi sadrži kolekciju drugih fajlova i/ili direktorijuma. Arhivski fajlovi se uobičajeno koriste za transfer (lokalno ili preko Interneta) ili pravljenje bekap kopije kolekcije falova i direktorijuma koje će vam omogućiti rad samo sa jednim fajlom (ako je kompresovan on ima manju veličinu od zbira svih fajlova unutar njega) umesto sa više njih. Pored toga, arhive se koriste za pakovanje softvera. Takav jedan fajl može biti lako kompresovan za lakši transfer dok fajlovi unutar arhive zadržavaju strukturu i sve privilegije originalnih fajlova. U ovom tekstu ćemo objasniti kako da radite upravljanje arhivskim fajlovima u Linux-u.
Za kreiranje, listanje i ekstrakciju arhiviranih fajlova možemo koristiti tar
alat. Arhive koje su napravljene pomoću tar alata se nazivaju tar
fajlovi ili tar
arhive i spakovani su u tarball
.
U ovom tekstu ćemo objasniti kako da koristite tar da biste kreirali arhivu, izlistate sadržaj arhive i ekstrakujete fajlove iz arhive. Dve uobičajene opcije za sve tri operacije su -f
i -v.
Da biste odredili ime arhivskog fajla koristite -f
praćeno nazivom fajla. Za prikaz imena fajlova dok se procesiraju koristite opciju -v
. Naravno, opcija -v
nije neophodna, već vam samo pomaže da posmatrate tok procesiranja fajlova tokom tar operacije.
Kreiranje arhivskog fajla
Da biste kreirali arhivu pomoću tar alata koristite opciju -c
i navedite naziv arhivskog fajla (pomoću opcije -f
). Uobičajena je praksa da koristite ime sa .tar
ekstenzijom, ka na primer project.tar
.
Za kreiranje arhive pod nazivom npr project.tar iz sadržaja direktorijuma pod nazivom project, potrebno je da kucate:
$ tar -cvf project.tar project
Ova komanda kreira arhivu pod nazivom project.tar
koja sadrži direktorijum pod nazivom project i sav njen sadržaj. Originalni direktorijum project je ostao neizmenjen.
Koristite opciju -z
da kompresujete arhivu. Ovo stvara isti izlaz kao kod kreiranja nekompresovane arhive i korišćenja gzip-a za njeno kompresovanje, ali eleminiše taj dodatni korak.
Da biste iz sadržaja project direktorijuma kreirali kompresovani arhivu po nazivom project.tar.gz
kucajte:
$ tar -zcvf project.tar.gz project
Ova komanda kreira kompresovani arhivski fajl project.tar.gz
sadrži direktorijum project i celokupan njegov sadržaj. Originalni direktorijum project ostaje nepromenjen.
Napomena: Kada koristite opciju ‘-z
trebalo bi da navedete ime arhive sa ekstenzijom tar.gz
a ne sa ekstenzijom tar
, tako da naziv sam po sebi sugeriše da se radi o kompresovanoj arhivi. Ovo nije obavezno, ali je dobra praksa koju preporučujemo da i vi sledite.
Gzip
nije jedina forma kompresije. Tu su takođe i bzip2
i xz
. Kada fajl ima ekstenziju xz
to znači da je kompresovan korišćenjem xz
. Iato tako, kada fajl nosi ekstenziju bzip2
to znači da je kompresovan pomoću bzip2
. U ovom tekstu ćemo se više fokusirati na xz
.
Kada radite kompresiju pomoću xz
, treba više vremena da fajlovi budu kompresovani. Ipak, to se na kraju isplati jer xz
kompresija mnogo efikasnija i fajl kompresovan na ovaj način je obično manji u poređenju sa drugim metodama kompresije.
Evo primera kako da primenite xz
kod kompresija fajla pomoću tar
-a:
$ tar -Jcvf project.tar.xz project
Jednostavno zamenimo opciju -z
za gzip opcijom -J
(obratite pažnju da je u pitanju veliko slovo) za xz
. Važno je i da napomenemo da što je veći fajl, xz
će kao rezultat isporučivati sve bolju kompresiju.
Izlistavanje sadržaja arhivskog fajla
Da bismo izlistali sadržaj tar
arhive bez njenog ekstrakovanja, koristićemo tar sa opcijom ‘’-t ’’
. Za naš primer fajla pod nazivom project.tar
kucaćemo:
$ tar -tvf project.tar
Ova komanda izlistava sadržaj arhive project.tar
. Korišćenje -v
opcije zajedno sa opcijom -t
čini da tar
izbaci sve privilegije i vreme modifikacije svakog fajla, zajedno sa njegovim nazivom.
Da bismo izlistali sadržaj kompresovane arhive pod nazivom project.tar.gz
kucajte:
$ tar -tvf project.tar
Ekstrakovanje sadržaja arhivskog fajla
Da bismo ekstrakovali (ili otpakovali) sadržaj tar arhive koristićemo tar sa opcijom -x
. U našem slučaju, da bismo ekstrakovali sadržaj arhive project.tar
kucajte:
$ tar -xvf project.tar
Ova komanda ekstrakuje sadržaj project.tar
arhive u njen matični direktorijum. Ako je arhiva kompresovana, što obično znači da ima tar.gz
ili tgz
ekstenziju, uključite i opciju -z.
Za ekstrakovanje sadržaja kompresovane arhive pod imenom project.tar.gz
kucajte:
$ tar -zxvf project.tar.gz
Kao što ste videli tar
komanda je korisna za kreiranje bakapa i kompresovanje fajlova koji vam trenutno nisu potrebni. Dobra je praksa da bekapujete fajlove pre nego što krenete da radite sa njima. Ako nešto krene po zlu, uvek ćete moći da ih vratite u prethodno stanje. Komresovanje fajlova koji vam trenutno nisu potrebni čuva vaš sistem čistim i čuva slobodan prostor na disku. Postoje i drugi alati, ali se tar
pokazao kao najbolji zbog svoje raznovrsne primene, lakoće korišćenja i popularnosti koju je vremenom zasluženo stekao.
U ovom tekstu smo objasnili kako da radite upravljanje arhivkim fajlovima u Linux-u uz pomoć različitih alata. Koji alat vi koristite za kompresovanje i bekapovanje fajlova? Pišite nam u komentarima.
Bez komentara