Ekstrahiranje arhiva tar. Ustvarjanje in ekstrahiranje arhivov z uporabo ukaza Tar v Linuxu. Ukazi za ukrepanje

V tem članku vam bomo pokazali, kako s praktičnimi primeri in podrobna pojasnila najpogostejši parametri Tar.

Kaj je Tar?

Ukaz tar se uporablja za ustvarjanje arhivov tar s pretvorbo skupine datotek v arhiv. Ima tudi možnost ekstrahiranja arhivov tar, prikaza seznama datotek, vključenih v arhiv, dodajanja dodatnih datotek v obstoječi arhiv in različnih drugih vrst operacij.

Tar podpira široko paleto programov za stiskanje, kot so gzip, bzip2, lzip, lzma, lzop, xz in compress. Ko ustvarjate stisnjene arhive tar, je običajna praksa, da imenu arhivske datoteke dodate pripono kompresorja. Na primer, če je bil arhiv stisnjen z gzip, bi se imenoval archive.tar.gz.

Tar je bil prvotno zasnovan za ustvarjanje arhivov pri shranjevanju datotek na magnetni trak, zato je dobil ime " T opica AR drobnjak."

Obstajata dve različici tar, BSD tar in GNU tar, z nekaj funkcionalnimi razlikami. Večina Linux sistemi imajo privzeto vnaprej nameščen GNU tar. Če nimate nameščenega programa tar, priporočamo, da ga najprej namestite tako, da sledite našemu članku.

Sintaksa ukazne vrstice

Preden preidemo na uporabo ukaza tar, začnimo s pregledom osnovne sintakse.

Tar

  • OPERACIJA – Samo en argument je dovoljen in zahtevan. Najpogosteje uporabljene operacije:
    • --create (-c) – Ustvari nov arhiv tar.
    • --extract (-x) – Ekstrahirajte celoten arhiv ali eno ali več datotek iz arhiva.
    • --list (-t) – prikaže seznam datotek, vključenih v arhiv
  • MOŽNOSTI – Najpogosteje uporabljene operacije:
    • --verbose (-v) – Prikaži datoteke, obdelane z ukazom tar.
    • --file=archive=name (-f archive-name) – Podaja ime arhivske datoteke.
  • ARCHIVE_NAME – ime arhiva.
  • FILE_NAME(s) – s presledki ločen seznam imen datotek, ki jih je treba ekstrahirati. Če ni na voljo, bo ekstrahiran celoten arhiv.

Pri izvajanju ukaza tar lahko uporabite dolgo ali kratko obliko operacij in parametrov tar. Dolge oblike so bolj berljive, kratke pa hitrejše. Možnosti dolge oblike so predpone z dvojnim pomišljajem (--). Parametri kratkih oblik so predponi z enim pomišljajem (-), ki ga lahko izpustite.

Ustvarjanje arhiva Tar

Za ustvarjanje arhiva tar uporabite operator -c. Če želite na primer ustvariti arhivsko datoteko z imenom archive.tar iz datotek z imenom file1, file2, file3, zaženite naslednji ukaz:

Tar -cf arhiv.tar datoteka1 datoteka2 datoteka3

Tukaj je enakovreden ukaz, ki uporablja parametre dolge oblike:

Tar --create --file=archive.tar datoteka1 datoteka2 datoteka3

Naslednji primer bo ustvaril arhiv backup.tar iz imenika /home/username:

Tar -cf backup.tar /home/username

Arhive lahko ustvarite iz vsebine enega ali več imenikov ali datotek. Privzeto se imeniki arhivirajo rekurzivno, razen če je podana možnost --no-recursion. Če si želite ogledati datoteke, ki se obdelujejo, uporabite možnost -v.

Ustvarjanje arhiva Tar Gz

Gzip je najbolj priljubljen algoritem za stiskanje datotek tar. Pri stiskanju arhivov tar z gzip se mora ime arhiva končati s tar.gz ali tgz.

Če želite ustvariti arhiv tar.gz iz danih datotek, lahko uporabite naslednji ukaz:

Tar -czf arhiv.tar.gz datoteka1 datoteka2

Možnost -z pove tar-u, naj stisne arhiv z algoritmom gzip.

Ustvarjanje arhiva Tar Bz2

Drug priljubljen algoritem za stiskanje datotek tar je bzip2. Pri stiskanju arhivov tar z bzip2 se mora ime arhiva končati s tar.bz2 ali tbz.

Ko je podana možnost -j, bo tar uporabil algoritem za stiskanje arhiva bzip2.

Naslednji ukaz bo ustvaril arhiv tar.bz2 iz danih datotek:

Tar -cjf arhiv.tar.bz2 datoteka1 datoteka2

Arhivski seznam Tar

Za seznam vsebine arhiva tar uporabite operacijo --list (-t).

Tar -tf arhiv.tar datoteka1 datoteka2 datoteka3

Če določite vsebino arhiva z možnostjo --verbose (-v), bo tar natisnil več informacij, kot so lastnik, velikost datoteke, časovni žig itd.:

Tar -tvf archive.tar -rw-r--r-- linuxize/uporabniki 0 2018-09-08 20:15 file1 -rw-r--r-- linuxize/uporabniki 0 2018-09-08 20:15 file2 -rw-r--r-- linuxize/uporabniki 0 2018-09-08 20:15 file3

Ekstrahiranje arhiva Tar

Če želite ekstrahirati arhiv tar, uporabite operator --extract (-x) in podajte ime arhivske datoteke:

Tar -xf arhiv.tar

Možnost -v je običajno dodana tudi za tiskanje imen ekstrahiranih datotek.

Tar -xvf arhiv.tar

Privzeto bo tar ekstrahiral vsebino arhiva v trenutnem delovnem imeniku. Uporabite --directory (-C) za ekstrahiranje arhiviranih datotek v določenem imeniku:

Če želite na primer ekstrahirati vsebino arhiva v imenik /opt/files, lahko uporabite:

Tar -xf archive.tar -C /opt/files

Ekstrahiranje arhivov Tar Gz in Tar Bz2

Pri ekstrahiranju stisnjenih arhivov, kot sta tar.gz ali tar.bz2, vam ni treba določiti možnosti dekompresije. Ukaz je enak kot pri ekstrahiranju arhiva tar:

Tar -xf arhiv.tar.gz tar -xf arhiv.tar.bz2

Ekstrahiranje določenih datotek iz arhiva tar

Če želite ekstrahirati določene datoteke iz arhiva tar, dodajte seznam imen datotek, ločenih s presledki, ki jih želite ekstrahirati za imenom arhiva:

Tar -xf arhiv.tar datoteka1 datoteka2

Ko ekstrahirate datoteke, morate navesti njihova točna imena, vključno s potjo, kot je vneseno --list (-t).

Ekstrahiranje enega ali več imenikov iz arhiva je podobno ekstrahiranju datotek:

Tar -xf arhiv.tar dir1 dir2

Če poskusite ekstrahirati datoteko, ki ne obstaja, boste prejeli sporočilo o napaki, podobno naslednjemu:

Tar -xf archive.tar PREBERI ME tar: PREBERI ME: ni bilo mogoče najti v arhivu tar: Izhod s stanjem napake zaradi prejšnjih napak

Ekstrahiranje datotek iz arhiva Tar z nadomestnim znakom

Če želite ekstrahirati datoteke iz arhiva na podlagi vzorca nadomestnih znakov, uporabite stikalo --wildcards in določite vzorec, da preprečite interpretacijo lupine.

Če želite na primer ekstrahirati datoteke, katerih imena se končajo na .js (datoteke Javascript), lahko uporabite:

Tar -xf arhiv.tar --nadomestni znaki "*.js"

Dodajanje datotek v obstoječi arhiv

Če želite dodati datoteke ali imenike obstoječemu arhivu tar, uporabite operacijo --append (-r).

Če želite na primer dodati datoteko z imenom newfile v archive.tar, lahko uporabite:

Tar -rvf arhiv.tar nova datoteka

Odstranjevanje datotek iz arhiva tar

Za brisanje datotek iz arhiva uporabite operacijo --delete.

Če želite na primer odstraniti datoteko z imenom file1 iz archive.tar, lahko uporabite:

Tar --delete -f arhiv.tar datoteka1

Zaključek

Do zdaj bi morali dobro razumeti, kako ustvariti in ekstrahirati arhive tar.

Tar.gz je ustvarjen arhiv Tar program, in nato arhiviran z Gzip. To dvojno arhiviranje je posledica dejstva, da program Gzip dobro in hitro stisne, vendar to stori samo z eno datoteko. Zato se za pakiranje več datotek iz njih najprej ustvari en arhiv tar, nato pa se že zapakira s programom Gzip. Poleg tega je treba omeniti, da primarni arhiv tar praktično ne stisne informacij, ampak jih le združi v eno datoteko. V končni različici dobimo arhiv z dvojno končnico filename.tar.gz ali filename.tgz

Kako pravilno ustvariti arhiv tar.gz?

V operacijskem sistemu Windows

Uporabiti morate arhivar 7-zip.

Na OS Linux

Na gostiteljski strežnik se povežemo preko SSH protokola s programom PuTTY. V ukazno vrstico vnesite:

Ta ukaz bo ustvaril arhiv file.tar iz vseh datotek v imeniku /full/path. Ampak ker tar ne arhivira, ampak samo združuje datoteke, potem jih moramo znova stisniti z Gzip:

tar -czvf datoteka.tar.gz /celotna/pot

Kot rezultat bomo dobili file.tar.gz, ki se bo nahajal v imeniku /full/path.

pravila sintakse ukaza tar

tar [-ključi] [ime arhiva, ki bo ustvarjen] [kaj zapakirati\kam zapakirati]

Glede ključev:
c (ustvari) - ustvari arhivsko datoteko

z (gzip) - arhivirajte datoteko z uporabo gzip

Kako pravilno razpakirati arhiv tar.gz?

V operacijskem sistemu Windows

Na OS Linux

Na strežniku za gostovanje - na strežnik se povežite preko protokola SSH s programom PuTTY. V ukazno vrstico vnesite:

Sintaksa

tar [-ključi] [arhiv za razpakiranje ali pot do njega]

x (eXtract) - razpakirajte datoteke
v (podrobno) - prikaži informacije o izvajanju
f (datoteka) - označuje, da morate ustvariti datoteko z imenom, ki je navedeno za ključi (v našem primeru file.tar ali file.tar.gz), če ne podate tega ključa, bo privzeto ime uporabiti, sicer bodo nastale težave.
file.tar.gz je ime arhiva, ki ga je treba razpakirati.

V sistemih Unix (to je Linux, Freebsd itd.) je ukaz tar glavni pripomoček za arhiviranje. Razumevanje številnih možnosti tega ukaza vam bo omogočilo, da obvladate arhivsko manipulacijo.

V tem članku bi rad pogledal različne primere, vključno z ustvarjanjem arhiva tar (z uporabo stiskanja gzip in bzip), ekstrahiranjem posamezne datoteke ali imenika, ogledom vsebine arhiva tar, preverjanjem celovitosti arhiva tar, ugotavljanjem razlika med arhivom tar in datotečni sistem, izračun velikosti arhiva pred ustvarjanjem in drugi.

Ustvarjanje arhiva z ukazom tar

Ustvarjanje in razpakiranje arhiva tar poteka z možnostjo cvf. Takole izgleda osnovni ukaz za ustvarjanje arhiva:

$tar cvf ime_arhiva.tar ime_dir/

Oglejmo si vsak ključ iz možnosti posebej:

  • c – ustvarjanje novega arhiva
  • v – izpis seznama datotek za obdelavo
  • f – ime arhivske datoteke

Če želite ustvariti stisnjen arhiv gzip, morate uporabiti možnost cvzf. Prejšnja možnost cvf sploh ne uporablja stiskanja. Če želite uporabiti stiskanje gzip, dodajte možnost z, kot je prikazano spodaj:

$ tar cvzf ime_arhiva.tar.gz ime dir/

  • z – zapakira arhiv s stiskanjem gzip

Osebno raje vedno pustim možnost cvf nespremenjeno in dodam potrebne ključe samo na koncu, če je potrebno stiskanje. Na primer cvfz ali cvfj. Tako si je lažje zapomniti.

Zdaj pa ustvarimo arhiv s stiskanjem bzip2:

$ tar cvfj ime_arhiva.tar.bz2 ime dir/

  • j – zapakira arhiv s kompresijo bzip2

gzip ali bzip2? Stiskanje in dekompresiranje arhiva z uporabo bzip2 traja nekoliko dlje, sam arhiv pa je manjši.

Ustvarjanje arhiva tar s trenutnim datumom v imenu arhiva

Če ustvarjate varnostno kopijo, je zelo pomembno, da natančno veste, kdaj je bila ustvarjena. To najlažje izveš iz njegovega imena.

Tar -cvf arhiv-$(datum +%Y%m%d).tar.gz dirname/

Razpakiranje arhiva z ukazom tar

Za razpakiranje arhiva uporabite ukaz xvf:

$tar xvf ime_arhiva.tar

  • x – ekstrahiraj datoteke iz arhiva

Za razpakiranje tar.gz uporabite možnost xvfz:

$tar xvfz ime_arhiva.tar.gz

Če želite razpakirati stisnjen arhiv bzip2, uporabite možnost xvfj:

$tar xvfj ime_arhiva.tar.bz2

Ogled datotek v arhivu tar

Če si želite ogledati vsebino arhiva tar, uporabite možnost tvf.

$tar ime_arhiva tvf.tar

Za ogled vsebine arhiva, stisnjenega z gzip, uporabite možnost tvfz

$ tar tvfz ime_arhiva.tar.gz

Za ogled vsebine arhiva, stisnjenega z bzip2, uporabite možnost tvfj

$tar tvfj ime_arhiva.tar.bz2

Ekstrahiranje posamezne datoteke iz arhivov tar, tar.gz, tar.bz2

Obstajajo situacije, ko morate ekstrahirati samo eno datoteko iz velikega arhiva:

$ tar xvf arhivska_datoteka.tar pot/do/datoteke

Za stisnjene arhive gzip oziroma bzip2 uporabite:

$ tar xvfz arhivska_datoteka.tar.gz pot/do/datoteke $ tar xvfj arhivska_datoteka.tar.bz2 pot/do/datoteke

Ekstrahiranje ene mape iz arhivov tar, tar.gz, tar.bz2

Ekstrahiranje posamezne mape, vključno z vsemi podmapami in datotekami, poteka na enak način kot ekstrahiranje posamezne datoteke:

$ tar xvf arhivska_datoteka.tar /pot/do/dir/

Če želite ekstrahirati več map iz arhiva, določite njihova imena v vrstnem redu:

$ tar xvf arhivska_datoteka.tar /pot/do/dir1/ /pot/do/dir2/

Za stisnjene arhive velja enako, le z uporabo dodatnih ključev:

$ tar xvfz arhivska_datoteka.tar.gz /pot/do/dir/ $ tar xvfj arhivska_datoteka.tar.bz2 /pot/do/dir/

Ekstrahiranje skupine datotek iz arhivov tar, tar.gz, tar.bz2 z uporabo regularnih izrazov

Če želite ekstrahirati skupino datotek na podlagi določenih značilnosti v imenu, ki ga lahko uporabite regularni izrazi. Na primer, ekstrahirajmo iz arhiva vse datoteke z html razširitev.

$ tar xvf arhivska_datoteka.tar --nadomestni znaki "*.pl"

Dodajanje datoteke ali mape v obstoječi arhiv tar

Če želite v obstoječi arhiv dodati novo datoteko ali mapo, uporabite možnost -r:

$ tar rvf ime_arhiva.tar nova datoteka

Dodajanje mape poteka na enak način:

$ tar rvf ime_arhiva.tar novdir/

Ne pozabite, da postopek dodajanja datotek in map deluje samo za nestisnjene arhive tar.

Določanje velikosti arhiva tar pred ustvarjanjem

Naslednji ukaz vam omogoča, da določite velikost arhiva tar.gz ali tar.bz2, preden ga ustvarite (v KB)

Tar -czf - /imenik/v/arhiv/ | wc –c $ tar -cjf - /imenik/v/arhiv/ | wc -c


Preprosta shema varnostnega kopiranja je, da enkrat shranite vse in nato varnostno kopirate vse, kar se je spremenilo od prejšnje kopije. Prva kopija se imenujepopolna varnostna kopija , naknadno inkrementalne varnostne kopije . Popolna kopija se pogosto ne prilega v celoti na trak (ali disketo). Obnovitev iz inkrementalnih kopij bo morda zahtevala večkrat večja količina delo kot od poln. Obnovitev je mogoče optimizirati tako, da vedno varnostno kopirate vse, začenši s prejšnjo celotno kopijo; ta pot zahteva malo več dela, vendar nikoli ne bo treba obnoviti več kot celotno in eno inkrementalno kopijo.

Če želite vsak dan delati kopije in imate šest trakov, lahko uporabite trak 1 za prvo celotno kopijo (recimo v petek) in trakove od 2 do 5 za inkrementalne kopije (od ponedeljka do četrtka). Nato naredite novo celotno kopijo na traku 6 (drugi petek) in ponovno začnete izdelovati inkrementalne kopije na trakovih 2-5. Nočete prepisati traku 1, dokler nimate nove celotne kopije, tako da se med ustvarjanjem nove celotne kopije ne zgodi nič slabega. Ko naredite popolno kopijo na traku 6, lahko trak 1 shranite nekje drugje, če bodo vaši drugi varnostni trakovi uničeni. Ko morate narediti naslednjo celotno kopijo, izberete in uporabite trak 1.

Če imate več kot šest trakov, lahko dodaten prostor uporabite za celotne kopije. Vsakič, ko naredite celotno kopijo, uporabite najstarejši trak. Tako lahko imate popolne kopije prejšnjih nekaj tednov, kar je dobro, če želite najti staro, zdaj izbrisano datoteko ali staro različico datoteke.

Varnostno kopiranje z uporabo tar

Celotno kopijo lahko preprosto naredite z ukazomkatran :

# tar --create --file /dev/ftape /usr/src

Zgornji primer uporablja različico GNUkatran in dolga imena možnosti. Tradicionalna različicakatran sprejme samo en znak kot parameter. Različica GNU lahko obravnava tudi kopije, ki se ne prilegajo na en trak ali disketo, in zelo dolge poti; vse tradicionalne različice tega ne zmorejo. Linux uporablja samo GNUkatran .

Če vaša kopija ne ustreza enemu traku, morate uporabiti to možnost--več zvezkov (-M):

# tar -cMf /dev/fd0H1440 /usr/src

tar: Odstranjevanje vodilnih / iz absolutnih imen poti v arhivu

Pripravite zvezek #2 za /dev/fd0H1440 in pritisnite return:

Upoštevajte, da morate pred začetkom kopiranja diskete formatirati. Za izvajanje ukazov za formatiranje lahko uporabite drugo okno ali virtualni terminalkatran bo prosil za novo disketo.

Ko naredite kopijo, jo morate preveriti z možnostjo--primerjaj (-d):

# tar --primerjaj --verbose -f /dev/ftape

usr/src/

usr/src/linux

....

Če svoje kopije ne preverite, ne boste opazili, da vaša kopija ne deluje, dokler ne izgubite izvirnih podatkov.

Z ukazom lahko izvedete inkrementalno kopijokatran z možnostjo --newer (-N ):

# tar --create --newer "8. september 1995" --file /dev/ftape /usr/src --verbose

tar: Odstranjevanje vodilnih / iz absolutnih imen poti v arhivu

usr/src/

usr/src/linux-1.2.10-vključuje/

usr/src/linux-1.2.10-vključuje/vključuje/linux/moduli/

usr/src/linux-1.2.10-vključuje/vključuje/asm-generično/

usr/src/linux-1.2.10-vključuje/vključuje/asm-i386/

usr/src/linux-1.2.10-vključuje/vključuje/asm-mips/

usr/src/linux-1.2.10-vključuje/vključuje/asm-alfa/

usr/src/linux-1.2.10-vključuje/vključuje/asm-m68k/

usr/src/linux-1.2.10-vključuje/vključuje/asm-sparc/

usr/src/popravek-1.2.11.gz

na žalost, katran ne more zaznati spremembe Inode informacije o datoteki, na primer spreminjanje pravic dostopa ali preimenovanje datoteke. Težavo rešimo z ukazomnajti in primerjava trenutnega stanja datotečnega sistema s seznami datotek, ki so bile predhodno varnostno kopirane. Skripte in programe za avtomatizacijo tega procesa lahko najdete na strežnikih Linux ftp.

Obnovitev z uporabo tar

Ekipa katran z možnostjo --extract (-x ) ekstrahira datoteke:

# tar --extract --same-permissions --verbose --file /dev/fd0H1440

usr/src/

usr/src/linux

usr/src/linux-1.2.10-vključuje/

usr/src/linux-1.2.10-vključuje/vključuje/

usr/src/linux-1.2.10-vključuje/vključuje/linux/

...

Izvlečete lahko tudi samo določene datoteke ali imenikov (ki vključujejo vse njihove datoteke in podimenike), pri čemer jih navedete v ukazni vrstici:

# tar xpvf /dev/fd0H1440 usr/src/linux-1.2.10-includes/include/linux/hdreg.h

usr/src/linux-1.2.10-vključuje/vključuje/linux/hdreg.h

Uporabite možnost--list(-t ), če želite samo videti, katere datoteke so na nosilcu varnostne kopije:

# tar --list --file /dev/fd0H1440

usr/src/

usr/src/linux

usr/src/linux-1.2.10-vključuje/

usr/src/linux-1.2.10-vključuje/vključuje/

usr/src/linux-1.2.10-vključuje/vključuje/linux/

usr/src/linux-1.2.10-vključuje/vključuje/linux/hdreg.h

usr/src/linux-1.2.10-includes/include/linux/kernel.h

...

Upoštevajte tokatran nosilec varnostne kopije vedno prebere zaporedno, zato je pri velikih nosilcih postopek precej počasen. Vendar pa naključnega dostopa ni mogoče uporabiti, če se uporablja trak ali drug serijski medij.

katran ne obdeluje izbrisane datoteke Prav. Če morate obnoviti datotečni sistem iz celotne in inkrementalne kopije in ste datoteko izbrisali med izdelovanjem kopij, bo znova obstajala, ko izvedete obnovitev. To je lahko velika težava, če so v datoteki shranjeni pomembni podatki, ki ne bi smeli biti več dostopni.



man tar Uporaba: tar [MOŽNOST...] [DATOTEKA]...
GNU `tar" je za shranjevanje datotek
na magnetni trak ali arhiv na disku in
obnovitev ločene datoteke od
arhiv.

Primeri:
tar -cf archive.tar foo bar # Ustvari archive.tar iz datotek
foo in bar.
tar -tvf archive.tar # Natisni podroben seznam
vse datoteke v arhivu archive.tar.
tar -xf arhiv.tar # Ekstrahiraj vse datoteke
iz arhiva.tar.

Osnovni način delovanja:

A, --catenate, --concatenate pripenjanje datotek tar
v arhiv
-c, --create ustvari nov arhiv
-d, --diff, --compare iskanje razlik med
arhiv in datoteka
sistem
--delete izbriši iz arhiva (ni vključen
magnetni trakovi!)
-r, --append dodajanje datotek na konec
arhiv
-t, --list vsebine seznama
arhiv
--test-label preveri oznako nosilca arhiva
in izhod
-u, --update samo dodajanje v arhiv
novejše datoteke
-x, --extract, --get ekstrakt datotek iz
arhiv

Modifikatorji:

Preverite naprave, preverite številke naprav, ko
ustvarjanje inkrementalnih
arhivi (privzeto)
-g, --listed-incremental=DATOTEKA
dodatno obdelavo
rezervacija novega
format GNU
-G, --inkrementalna obdelava inkrementalna
rezervacija starega
format GNU
--ignore-failed-read ne zapusti, ko
ničelno stanje za
neberljive datoteke
-n, --seek iskanje po arhivu je na voljo
--no-check-device pri ustvarjanju ne preverja številk naprav
inkrementalni arhivi
--occurrence[=N] obdelava samo N-tega
pojavov za vsakega
datoteko v arhivu. Ta možnost
res samo v kombinaciji z
enega od podukazov --delete,
--diff, --extract ali --list in kdaj
seznam datotek je določen bodisi v
ukazna vrstica, oz
prek možnosti -T. Privzeto
N je enako 1.
--sparse-version=MAJOR[.MINOR]
namestitev različice
uporabljen format
vakuum (pomeni
--redko)
-S, --sparse učinkovita obdelava
redke datoteke

Kontrola prepisovanja:

K, --keep-old-files ne prepisujejo
obstoječe datoteke, ko
pridobivanje
--keep-newer-files ne prepiše
obstoječe datoteke,
ki so novejše od njihovih
arhivirane kopije
--no-overwrite-dir shrani metapodatke
obstoječih katalogov
--overwrite prepiše obstoječe
datotek pri ekstrahiranju
--overwrite-dir prepisati obstoječe
datoteke pri ekstrahiranju (by
privzeto)
--recursive-unlink počisti celotno hierarhijo v
izvleček imenika
--remove-files odstrani datoteke, potem ko so
dodajanje v arhiv
-U, --unlink-first odstrani vse prejšnje datoteke
ekstrahiranje na vrhu
-W, --verify poskus preveriti arhiv
po snemanju

Izbira izhodnega toka:

Ignore-command-error prezri kode
dokončanje hčerinskih družb
procesov
--no-ignore-command-error štetje neničelnih kod
dokončanje hčerinskih družb
obdela kot napako
-O, --to-stdout ekstrahiraj datoteke v
standardni izhod
--to-command=UKAZ
preusmeriti
ekstrahirane datoteke v drugo
program

Obdelava atributov datoteke:

Atime-preserve[=METHOD]
prihranite čas dostopa
kopiral datoteke s strani
čas okrevanja
po branju (METHOD="zamenjaj";
se uporablja privzeto)
ali ne nastavite časa
najprej
(METOD="sistem")
--delay-directory-restore ne nastavi časa
spremembe in pravice dostopa
ekstrahirani imeniki do
dokončanje procesa
ekstrakcija
--group=NAME vsiljeno
nastavite NAME na
kot skupina za
dodane datoteke
--mode=NAČIN vsiljen
namestiti (znak)
NAČIN dostopa za
dodane datoteke
--mtime=DATUM-ALI-DATOTEKA
namestite za
dodane datoteke mtime iz
DATUM-ALI-DATOTEKA
-m, --touch ne ekstrahiraj časa
spremembe datoteke
--no-delay-directory-restore
prekličite možnost
--delay-directory-restore
--no-same-owner ekstrahiraj datoteke kot lastne
lasten
--no-same-permissions uporabi umask uporabnika
pri pridobivanju pravic
dostop iz arhiva (avtor
privzeto za normalno
uporabniki)
--numeric-owner namesto tega uporabi številke
imena lastnikov/skupin
--owner=NAME vsiljeno
nastavite NAME na
kot lastnik za
dodane datoteke
-p, --preserve-permissions, --same-permissions
pridobiti podatke o
pravice dostopa do datoteke (avtor
privzeto za
superuporabnik)
--preserve enakovredno -p in -s
--same-owner poskuša ekstrahirati datoteke iz
isti lastnik
-s, --preserve-order, --same-order
razvrstite ekstrahirano
imena v enakem vrstnem redu kot
in v arhivu

Izbira in preklapljanje naprav:

F, --file=ARHIV uporabi datoteko oz
naprava ARHIV
--force-local arhivska datoteka je
lokalni, tudi če
vsebuje dvopičje
-F, --info-script=IME, --new-volume-script=IME
zaženite skript z
koncu vsakega traku
(implicirano
uporabi -M)
-L, --tape-length=N spremeni trak po snemanju
ŠTEVILO x 1024 bajtov
-M, --več zvezkov
ustvarjanje/vpis/priklic
večzvezčni arhivi
--rmt-command=UKAZ
uporabite navedeno
UKAZ rmt namesto rmt
--rsh-command=UKAZ
uporabite daljinca
UKAZ namesto rsh
--volno-file=DATOTEKA uporaba/posodobitev
številke zvezkov v DATOTEKI

Razbijanje v bloke:

B, --blocking-factor=BLOKIRANJE
število BLOKOV x 512 bajtov na
snemanje
-B, --read-full-records ponovno razbije v bloke
pri branju (za kanale
4.2BSD)
-i, --ignore-zeros ignoriraj ničelne bloke
arhivirano (tj. EOF)
--record-size=N ŠTEVILO bajtov na zapis,
večkratnik 512

Format arhiva:

H, --format=FORMAT ustvari arhiv v podanem
format

FORMAT je lahko:

Gnu format GNU tar 1.13.x
oldgnu format GNU kot v tar<= 1.12
format pax POSIX 1003.1-2001 (pax)
posix enakovreden pax
format ustar POSIX 1003.1-1988 (ustar)
v7 stari format tar V7

Stari arhiv, --prenosljivost
enakovredno --format=v7

Pax-option=ključna beseda[[:]=vrednost][,ključna beseda[[:]=vrednost]]
nadzor ključnih besed
pax
--posix enakovredno --format=posix
-V, --label=BESEDILO ustvarite arhiv z imenom nosilca
BESEDILO; pri
seznam/priklic
uporabite TEXT v
kot predlogo
zamenjave

Možnosti stiskanja:

A, --auto-compress za določitev uporabi arhivsko pripono
program za stiskanje
-j, --bzip2 posreduje arhiv skozi bzip2
--lzma filtrira arhiv skozi lzma
--use-compress-program=PROG
prenesite arhiv
PROG (mora podpirati
-d)
-z, --gzip, --gunzip, --ungzip preskoči arhiv
gzip
-Z, --compress, --uncompress preskoči arhiv
stisniti

Izbira lokalnih datotek:

Add-file=DATOTEKA dodajte navedeno DATOTEKO v
arhiv (uporabno, če ime
se začne z vezajem)
--backup[=MANAGE]
prej naredite kopijo
odstranitev, UPRAVLJANJE
izbira različice
-C, --directory=DIRECTORY pojdi v DIRECTORY
--exclude=VZOREC izključitev datotek,
definiran s PATTERN
--exclude-caches izključuje vsebino
imenike z datoteko CACHEDIR.TAG
razen zase
datoteka z oznakami
--exclude-caches-all exclude directories,
ki vsebuje datoteko CACHEDIR.TAG
--exclude-caches-under izključi vso vsebino
imenike, ki vsebujejo datoteko
CACHEDIR.TAG
--exclude-tag=DATOTEKA izključi imenike,
ki vsebuje DATOTEKO, za
razen same DATOTEKE
--exclude-tag-all=DATOTEKA izključuje imenike z
MAPA
--exclude-tag-under=DATOTEKA
izključite vso vsebino
imeniki, ki vsebujejo FILE
--exclude-vcs izključi imenike CVS
-h, --dereference sledijo simboli
povezave in shranjevanje datotek,
na katerega kažejo
--hard-dereference sledi trdim povezavam; arhiv in
odvržejo datoteke
nanašati se na
-K, --starting-file=IME-ČLANA
začnite s članom MEMBER-NAME
v arhivu
--newer-mtime=DATUM primerjava datuma in časa,
le če se spremeni
podatke
--brez rekurzije onemogoči samodejno
sestop do katalogov
--no-unquote ne odstrani narekovajev iz imen
datoteke, prebrane iz
z možnostjo -T
--null -T bere vrstice,
ki se konča z ničlo,
onemogoči možnost -C
-N, --newer=DATUM-ALI-DATOTEKA, --after-date=DATUM-ALI-DATOTEKA
shranite samo te datoteke
ki so novejše
DATUM-ALI-DATOTEKA
--en datotečni sistem ostani lokalni
datotečni sistem, ko
ustvarjanje arhiva
-P, --absolute-names ne odstranijo vodilnega `/" iz
imena datotek
--recursion rekurzivni spust naprej
imeniki (privzeto)
--suffix=LINE prej naredi kopijo
brisanje, preglasitve
običajna pripona ("~", če
le da ni preglasen
spremenljivka okolja
SIMPLE_BACKUP_SUFFIX)
-T, --files-from=DATOTEKA naloži imena iz DATOTEKE
za ekstrakcijo oz
ustvarjanje
--unquote odstrani narekovaje iz imen
datoteke, prebrane iz
z možnostjo -T (privzeto)
-X, --exclude-from=DATOTEKA izključi vzorce,
naveden v DATOTEKI

Pretvorba imena datoteke:

Strip-components=N odstrani navedeno ŠTEVILO
začetne komponente iz
imena datotek prej
ekstrakcija
--transform=RAZŠIRITEV
uporabite zamenjavo
sed razširitve za
pretvorbe imen datotek

Možnosti predloge z nadomestnimi znaki
datoteke (vplivajo na vzorce vključitve in
izjeme):

Zasidrani začetni vzorci imena datoteke
--ignore-case prezri velike in male črke
--brez zasidranih vzorcev za katerim koli "/" (by
privzeto za izključeno)
--no-ignore-case razlikuje med velikimi in malimi črkami (by
privzeto)
--brez nadomestnih znakov natančno ujemanje
linija
--no-wildcards-match-slash maske se ne ujemajo
"/"
--nadomestni znaki uporabljajo maske (by
privzeto za izključeno)
--wildcards-match-slash maske se ujemajo z "/" (po
privzeto za izključeno)

Izhod informacij:

Kontrolna točka[=N] prikazuje sporočila o napredku
izvedba vsak
ŠTEVILO zapisov (privzeto
10)
--checkpoint-action=DEJANJE izvedi DEJANJE na vsaki kontrolni točki
--index-file=DATOTEKA pošlji podrobni izpis
podatki v DATOTEKI
-l, --check-links izpišejo sporočila, če
Vse povezave niso shranjene
--no-quote-chars=STRING
onemogoči citiranje
znakov iz STRING
--quote-chars=STRING neobvezno
citat znakov iz
ČRTE
--quoting-style=SLOG nastavi slog
navajanje imen. Vrednote
za STIL glej spodaj
-R, --block-number natisni številke blokov
arhiv v vsakem sporočilu
--show-defaults prikaže vrednosti tar po
privzeto
--show-omitted-dirs pri izpisu seznam oz
izvleček pokaži vse
katalogi, ne
ki ustreza stanju
Iskanje
--show-transformed-names, --show-stored-names
pokaži imena datotek
ali arhivi po
transformacija
--totals[=SIGNAL] izhod skupno število bajtov
po obdelavi arhiva; z
argument – ​​sklep general
število bajtov po dostavi
ta SIGNAL. Dovoljeno
signali: SIGHUP, SIGQUIT, SIGINT, SIGUSR1
in SIGUSR2. Prav tako je dovoljeno
uporabite imena brez
predpono SIG
--utc natisni datum spremembe datoteke
v formatu UTC
-v, --verbose podrobni seznam
obdelanih datotek
-w, --interactive, --confirmation
prosi za potrditev
za vsako dejanje

Možnosti združljivosti:

O o ustvarjanju, enakovredno
--stari-arhiv; pri ekstrakciji,
enakovredno --no-same-owner

Druge možnosti:

Pomoč rezultat te pomoči
--omeji onemogoči uporabo
nekateri potencialno
nevarne možnosti
--usage output kratko sporočilo
o uporabi
--version izhodna različica programa

Zahtevani ali neobvezni argumenti
za dolge možnosti so tudi
obvezno ali neobvezno za
ustrezne kratke možnosti.

Pripona za varnostne kopije je `~", razen če je
nameščen prek --pripone
ali SIMPLE_BACKUP_SUFFIX. Nadzor različic lahko
biti nameščen
prek --backup ali VERSION_CONTROL. Vrednote lahko
biti:

Brez, izklopljeno, ne ustvarjaj varnostnih kopij
t, oštevilčen ustvari oštevilčen
varnostne kopije
nič, obstoječe oštevilčene, če obstajajo
oštevilčene kopije, sicer navadne
nikoli, preprosto vedno ustvari preprosto
varnostne kopije

Veljavni argumenti za možnosti sloga --quoting:

Dobesedno
lupina
lupina-vedno
c
c-mogoče
pobegniti
locale
clocale

Privzete vrednosti *tega* tar so:
--format=gnu -f- -b20 --quoting-style=escape --rmt-command=/usr/sbin/rmt
--rsh-ukaz=/usr/bin/rsh

Pripomoček ukazne vrstice tar se uporablja za delo z arhivi v operacijskih sistemih UNIX. Z njegovo pomočjo lahko arhivirate podatke in optimizirate porabo prostora na disku.

Ustvarjanje in razpakiranje arhivov

Ustvari

Izdelava poteka s ključem c. Sintaksa je naslednja:

katran -c<опции> <новый архивный файл> <что сжимаем>

Primer ustvarjanja:

tar -czvf arhiv.tar.gz /home/dmosk

* v tem primeru bo ustvarjen arhiv arhiv.tar.gz domači imenik uporabnika ( /domov/dmosk)
** Kje z— stisnite arhiv v gzip (brez tega parametra tar ne stisne, ampak ustvari tako imenovano tarball); c— ključ za ustvarjanje arhiva; v— podrobni način, to je s postopkom, prikazanim na zaslonu (zelo priročno za spremljanje napredka dela, vendar ga je v skriptih mogoče zamuditi); f— uporaba datoteke (vendar jo določimo, saj večinoma delamo z datotekami).

Razpakiraj

Razpakiranje se izvede s ključem x s sintakso:

tar -x<опции> <архивный файл>

Primer razpakiranja:

tar -xvf arhiv.tar.gz

Primeri

gz

Razpakiranje datoteke .gz:

tar -xvf arhiv.tar.gz

* če pride do napake To ni videti kot arhiv tar, lahko uporabite ukaz gzip -d arhiv.tar.gz.

bz2

tar -xvjf arhiv.tar.bz2

* tipka j je odgovorna za delo z bz2.

Če se sistem pritožuje nad bzip2, ga morate namestiti:

yum namestite bzip2

apt-get namestite bzip2

pkg namestite bzip2

* za CentOS (na osnovi RPM), Ubuntu (na osnovi deb), FreeBSD (na osnovi BSD).

Če opazimo napako tar: Neprepoznan format arhiva, uporabimo naslednji ukaz:

bzip2 -d arhiv.tar.bz2

gzip

tar -xvzf arhiv.tar.gzip

* tipka z je odgovorna za delo z gzip.

tgz

Razpakira kot gzip:

tar -xvzf arhiv.tgz

Razpakirajte v določeno mapo

tar -C /home/user -xvf arhiv.tar.gz

* ključ -C uporablja se za določitev mape, v katero naj bodo datoteke iz arhiva razpakirane.

Razpakiranje brez podmape

To metodo lahko uporabite za razpakiranje v vnaprej pripravljen imenik. Nekaj ​​​​učinka bo imelo preimenovanje imenika ali analog "Razpakiraj tukaj":

tar -C /home/admin/mytar -xvf admin.tar.gz --strip-components 1

* katalog /domača stran/admin/mytar je treba ustvariti vnaprej; --strip-components 1 bo preskočil eno podmapo znotraj arhiva.

Izključitev datotek po maski

Če morate preskočiti nekaj datotek, vnesite ukaz s stikalom --exclude:

tar -czvf archive.tar.gz /wwwsite --exclude="sess_*"

* v tem primeru bomo ustvarili arhiv arhiv.tar.gz, ki ne bo vseboval datotek, ki se začnejo z sess_.

Opis ključev tar

Ukazi za ukrepanje

* V enem ukazu ne morete uporabiti več zgornjih tipk.

Dodatne možnosti

Ključ Opis
--atime-preserve Za datoteko pustite enak časovni žig dostopa.
-b N Nastavite velikost bloka na N x 512.
-C Spremeni imenik. Privzeto se uporablja tisti, v katerem smo.
--kontrolna točka Pokaži imena map pri branju arhivske datoteke.
-G Pri prikazovanju ali pridobivanju uporabite staro obliko inkrementalne varnostne kopije.
-g Pri prikazovanju ali pridobivanju uporabite novo obliko inkrementalne varnostne kopije.
-h Ne podvajajte simboličnih povezav. Samo datoteke, na katere kažejo te simbolne povezave.
-jaz Ignorirajte bloke ničel.
-j Uporaba bzip2.
--ignore-failed-branje Ignorirajte neberljive datoteke.
-k Pri razpakiranju se obstoječe datoteke ne nadomestijo z ustreznimi datotekami iz arhiva.
-L N Zamenjava magnetnega traku po N*1024 bajtih.
-m Pri pridobivanju ne upoštevajte časa spreminjanja objekta.
-M Večzvezčni arhivi.
-N DATUM Shrani samo novejše datoteke glede na DATE
-O Neposredni izhod na standardni izhod.
-str Pridobivanje zaščitenih informacij.
-P Ne odstranjuje začetne poševnice (/) iz imen.
-s Razvrščanje datotek med ekstrakcijo.
-- ohraniti Enako kot -ps
--odstrani-datoteke Po dodajanju v arhiv izbrišite izvorne datoteke.
--isti-lastnik Pri ekstrakciji ohrani lastnika.
-- skupaj Izhodni bajti pri ustvarjanju arhiva.
-v Beleženje dejanj—prikaže seznam objektov, na katerih se zgodi dejanje.
-V IME Ustvarjanje arhiva na nosilcu z oznako NAME.
--različica Prikaži različico tar.
-w Za vsako dejanje zahtevaj potrditev.
-W Preverjanje arhiva po snemanju.
--izključi DATOTEKO Izključi datoteko FILE.
-X DATOTEKA Izključi datoteke FILE.
-Z Filtrira arhiv z uporabo stiskanja.
-z Uporaba gzip.

* trenutni seznam možnosti lahko dobite z ukazom man tar.