rad sa arhivskim fajlovima

Kreiranje i upravljanje arhivskim fajlovima u Linux-u

24 јануара, 2021

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

Оставите одговор

Ваша адреса е-поште неће бити објављена. Неопходна поља су означена *