Tar archívum készítése, és tömörítése lesz a mai rész fő témája. Miért? Sokan idejétmúltnak és kicsit elavultnak tartják. Bár az igaz, hogy elég régen használjuk és igazi nagy változás nem került bele, de van pár olyan érv mellette, ami fontossá teszi, hogy ismerjük. Az egyik érv az elérhetőség. Minden Linux rendszeren jó eséllyel ott lesz, és nem kell telepíteni semmit a használatához. Tömöríteni is tud.
Csomagolás és tömörítés? Bár sokszor összekeverjük a két fogalmat, de nem teljesen egyező. A csomagolás fogalmát én úgy használom ebben a cikkben, mint annak a műveletnek a megnevezését, amikor több fájlt egy fájlba helyezünk be és semmi egyéb műveletet nem végzünk. Így a méret nem fog csökkenni. A tömörítvény, a tömörítés ezen már túllép: ekkor több, vagy kevesebb méret csökkentést is kapunk. Ebből két fontos dolgot már leszűrhetünk: egy fájlt lehet, de nem túl hasznos becsomagolni, és már sejthetjük, hogy a tömörítés az idő és erőforrás igényesebb.
Én most parancssori megoldásokat mutatom be. Bár van sok és jó grafikus tömörítő program, és a fájlkezelők nagy része is kezeli a tömörítéseket, de érdemes legalább az alap pár parancsot ismerni. Egyrészt sok esetben gyorsabb, kényelmesebb, másrészt a parancssoros megoldások szkriptesíthetőek.
Hol használhatunk tar archívumokat?
A tárhelyek drasztikus méretnövekedése, a sávszélesség megugrása miatt sokan elavultnak tartják a tömörítést, a csomagolást. Ez valahol igaz is. De akár a tárhely igény csökkentése, akár az átviteli idő csökkentése szerintem jó dolog.
A másik nagyon kellemes érv a tar archívumok mellett a neve: archívum. Alkalmas nagyon egyszerű és gyors archiválásra. Nincs annál egyszerűbb archiválás, mintha becsomagolod a fájlokat, és elrakod valahova. Bár nagyon sok jó archiváló program van, ami sokkal többet tud, de soha ne feledjük el: egy tar archívum teljesen megfelel az adatok statikus archiválására. Itt ne csak arra gondolj, hogy betömörítesz egy munkádat és elrakod biztonságba, örökre és ha kell majd ezer év múlva előveszed. A tar archívumokat azért szeretem, mert egypár config fájlt, vagy egy könyvtárat villámgyorsan becsomagolok, majd az eredetit szerkesztem, és ha gond van, akkor ott a tar archívum…
Alapvető tar és tar.gz archívum kezelés
Ebben a példában létrehozunk egy biztonsági másolatot, a backup.tar neven a /home/user könyvtárról. Nem egy rossz elgondolás, főleg egy nagyobb konfigurálás előtt, vagy olyan disztribúcióknál, amelyek előszeretettel írják felül a beállításokat frissítéskor.
tar -cvf backup.tar /home/user
-c Archívum létrehozása
-v A folyamat követés, kijelzése
-f Az archívum neve
Oké, ez szép és jó, de jobb lenne ha össze is tömörítené a tar archívumot. A tömörítés típusa gzip lesz, amit natívan kelez a tar program.
tar -cvzf backup.tar.gz /home/user
-z Tömörített gzip archív fájl legyen
Érdemes kipróbálni egy kisebb könyvtáron, ahol sok a sima szöveges fájl. Jelentős eltérés lesz a méretben. Itt a kisebb a jobb! De ugyanez már az mp3-as gyűjteményen nem fog akkor méret csökkentést végezni.
Bár én jellemzően úgy használom, hogy egy adott könyvtárat az összes fájllal egyben rakom be tar archívumba, de előfordulhat, hogy egyes fájlok, vagy fájltípusokat ki akarsz zárni. Ehhez a --exclude [filename] megoldás kell. A példa egyszerű:
tar --exclude file.txt --exclude file.sh -cvfz backup.tar.gz
A tar elég intelligensen kezei a wildcardokat, reguláris kifejezéseket. A helyettesítő karakterek lehetővé teszik a fájlok kiválasztását anélkül, hogy konkrétan meg kellene adni mindet.
tar -cf backup.tar “*.txt”
Az összes txt fájlt becsomagolja könyvtárból.
A tar vagy tar.gz archívum kicsomagolása
A tartalom kilistázása egyszerű:
tar -ztvf backup.tar.gz
-t A tartalom felsorolása
Ha olyan az igény a kimenetet egy sima szövegbe is irányíthatod:
tar -ztvf backup.tar.gz > lista.txt
Kicsit kényelmesebb egy szövegfájlban keresni, lapozni, mint a terminálban.
A kicsomagolás sem okozhat gondot.
tar -xvzf backup.tar.gz /ahova/akarod/
-x A kibontás
-z A jelzi a tömörítést
Ha sima tar archívum, akkor a -z nem kell. Logikus.
Ha nem adsz meg könyvtárat, akkor a munkakönyvtáradba csomagolja ki. Ez lehet jó is, ha pld. felül akarod írni az elhibázott konfigurációdat az eredeteivel, de lehet rossz is, ha nem.
Utólag is adhatsz hozzá fájlt:
tar -rvf backup.tar /ahol/van/file.kit
-r a hozzáadást szabályozza
Pár apró tipp:
- A -f kapcsoló az utolsó legyen, mert sokszor fura hibajeleket tud adni, ha nem így van.
- A tar, illetve az általa használt tömörítés monogám, csak egy szálon fut. Gyorsabb ezt a programot használni.
- Mindig könyvtárat használj tömörítése, így nem hányja a munkakönyvtárba a fájlokat kibontáskor.
- Érdemes az alapokat ismerni, be és kicsomagolást. De azt fejből! A többi lehetőséget is nézd át a man oldalakon, de ne vidd túlzásba a paraméterezést. Könnyen elvész a legnagyobb előnye, az egyszerűség, ha perceket töltesz azzal, hogy a lehető legjobban finomítsd a beállításokat.
Ennyi.
Érdemes tudni, hogy nem ennyi a tar archívum kezelésének a lehetőségei. Jól összeszedett és érthető man oldala van. Így ha többet akarsz abból kihozni, akkor ott megtalálod a megfelelő kapcsolókat.