Trekker ut tjærearkivet. Opprette og trekke ut arkiver ved å bruke Tar-kommandoen i Linux. Kommandoer for handling

I denne artikkelen vil vi vise deg hvordan du bruker Tar-verktøyet til å trekke ut og lage tar-arkiver med praktiske eksempler og detaljerte forklaringer de vanligste Tar-parametrene.

Hva er Tar?

Tar-kommandoen brukes til å lage tar-arkiver ved å konvertere en gruppe filer til et arkiv. Den har også muligheten til å trekke ut tar-arkiver, vise en liste over filer som er inkludert i arkivet, legge til flere filer til et eksisterende arkiv og forskjellige andre typer operasjoner.

Tar støtter et bredt spekter av komprimeringsprogrammer som gzip, bzip2, lzip, lzma, lzop, xz og compress. Når du oppretter komprimerte tar-arkiver, er det vanlig praksis å legge til et kompressorsuffiks til arkivfilnavnet. For eksempel, hvis arkivet ble komprimert med gzip, vil det få navnet archive.tar.gz.

Tar ble opprinnelig designet for å lage arkiver ved lagring av filer på magnetbånd, og det er derfor den får navnet sitt " T ape AR gressløk."

Det er to versjoner av tar, BSD tar og GNU tar, med noen funksjonelle forskjeller. Flertall Linux-systemer kommer med GNU tar forhåndsinstallert som standard. Hvis du ikke har tjære installert, anbefaler vi å installere den først ved å følge artikkelen vår.

Kommandolinjesyntaks

Før vi går videre til å bruke tar-kommandoen, la oss starte med å gå gjennom den grunnleggende syntaksen.

Tjære

  • DRIFT – Bare ett argument er tillatt og nødvendig. Mest brukte operasjoner:
    • --create (-c) – Opprett et nytt tar-arkiv.
    • --extract (-x) – Pakk ut hele arkivet eller én eller flere filer fra arkivet.
    • --list (-t) – vis en liste over filer inkludert i arkivet
  • ALTERNATIVER – Mest brukte operasjoner:
    • --verbose (-v) – Vis filer behandlet av tar-kommandoen.
    • --fil=arkiv=navn (-f arkivnavn) – Angir navnet på arkivfilen.
  • ARCHIVE_NAME – Arkivnavn.
  • FILE_NAME(r) – En mellomromseparert liste over filnavn som skal pakkes ut. Hvis det ikke oppgis, vil hele arkivet bli trukket ut.

Når du utfører tar-kommandoen, kan du bruke den lange eller korte formen for tar-operasjoner og parametere. Lange skjemaer er mer lesbare og korte skjemaer er raskere. Langformalternativer er foran med en dobbel bindestrek (--). Kortformparametere er prefikset med en enkelt strek (-), som kan utelates.

Opprettelse av Tar Archive

Bruk operatoren -c for å lage et tar-arkiv. For å lage en arkivfil med navnet archive.tar fra filer som heter fil1, fil2, fil3, kjør følgende kommando:

Tar -cf archive.tar fil1 fil2 fil3

Her er den ekvivalente kommandoen ved å bruke langskjemaparametere:

Tar --create --file=archive.tar fil1 fil2 fil3

Følgende eksempel vil opprette et backup.tar-arkiv fra katalogen /home/brukernavn:

Tar -cf backup.tar /home/brukernavn

Du kan opprette arkiver fra innholdet i én eller flere kataloger eller filer. Som standard arkiveres kataloger rekursivt med mindre --no-recursion-alternativet er spesifisert. Bruk alternativet -v hvis du vil se filene som blir behandlet.

Opprette et Tar Gz-arkiv

Gzip er den mest populære komprimeringsalgoritmen for tar-filer. Når du komprimerer tar-arkiver med gzip, må arkivnavnet slutte med enten tar.gz eller tgz .

For å lage et tar.gz-arkiv fra de gitte filene, kan du bruke følgende kommando:

Tar -czf archive.tar.gz fil1 fil2

Alternativet -z forteller tar å komprimere arkivet ved å bruke gzip-algoritmen.

Opprette et Tar Bz2-arkiv

En annen populær komprimeringsalgoritme for tar-filer er bzip2. Når du komprimerer tar-arkiver med bzip2, må arkivnavnet slutte med enten tar.bz2 eller tbz .

Når -j-alternativet er spesifisert, vil tar bruke bzip2-arkivkomprimeringsalgoritmen.

Følgende kommando vil opprette et tar.bz2-arkiv fra de gitte filene:

Tar -cjf archive.tar.bz2 fil1 fil2

Tar arkivoppføring

For å liste innholdet i et tar-arkiv, bruk --list (-t) operasjonen.

Tar -tf archive.tar fil1 fil2 fil3

Hvis du spesifiserer innholdet i arkivet ved å bruke --verbose (-v) alternativet, vil tar skrive ut mer informasjon, for eksempel eier, filstørrelse, tidsstempel, etc.:

Tar -tvf archive.tar -rw-r--r-- linuxize/users 0 2018-09-08 20:15 file1 -rw-r--r-- linuxize/users 0 2018-09-08 20:15 file2 -rw-r--r-- linuxize/brukere 0 2018-09-08 20:15 fil3

Trekker ut tjærearkivet

For å pakke ut et tar-arkiv, bruk --extract (-x)-operatoren og spesifiser arkivfilnavnet:

Tar -xf archive.tar

Alternativet -v legges også vanligvis til for å skrive ut navnene på de utpakkede filene.

Tar -xvf archive.tar

Som standard vil tar trekke ut innholdet i arkivet i gjeldende arbeidskatalog. Bruk --katalog (-C) for å pakke ut arkiverte filer i en bestemt katalog:

For å trekke ut innholdet i et arkiv til /opt/files-katalogen, kan du for eksempel bruke:

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

Trekker ut Tar Gz og Tar Bz2 arkiver

Når du trekker ut komprimerte arkiver, som tar.gz eller tar.bz2, trenger du ikke spesifisere et dekomprimeringsalternativ. Kommandoen er den samme som når du trekker ut tar-arkivet:

Tar -xf archive.tar.gz tar -xf archive.tar.bz2

Trekker ut spesifikke filer fra et tar-arkiv

For å trekke ut bestemte filer fra et tar-arkiv, legg til en liste over filnavn, atskilt med mellomrom, som skal trekkes ut etter arkivnavnet:

Tar -xf archive.tar fil1 fil2

Når du pakker ut filer, må du oppgi deres eksakte navn, inkludert banen, som skrevet --list (-t).

Å pakke ut en eller flere kataloger fra et arkiv ligner på å pakke ut filer:

Tar -xf archive.tar dir1 dir2

Hvis du prøver å pakke ut en fil som ikke eksisterer, får du en feilmelding som ligner på følgende:

Tar -xf archive.tar README tar: README: Finner ikke i arkiv tar: Avslutter med feilstatus på grunn av tidligere feil

Trekker ut filer fra et Tar-arkiv ved hjelp av et jokertegn

For å trekke ut filer fra et arkiv basert på et jokertegn-mønster, bruk --wildcards-bryteren og spesifiser mønsteret for å forhindre skalltolkning.

For å trekke ut filer hvis navn slutter på .js (Javascript-filer), kan du for eksempel bruke:

Tar -xf archive.tar --jokertegn "*.js"

Legge til filer i et eksisterende arkiv

For å legge til filer eller kataloger til et eksisterende tar-arkiv, bruk --append (-r) operasjonen.

For å legge til en fil med navnet newfile til archive.tar, kan du for eksempel bruke:

Tar -rvf archive.tar nyfil

Fjerner filer fra et tar-arkiv

Bruk --delete-operasjonen for å slette filer fra arkivet.

For å fjerne en fil som heter file1 fra archive.tar, kan du for eksempel bruke:

Tar --delete -f archive.tar fil1

Konklusjon

Nå bør du ha en god forståelse av hvordan du oppretter og trekker ut tjærearkiver.

Tar.gz er et arkiv opprettet Tar program, og deretter arkivert med Gzip. Denne doble arkiveringen skyldes at Gzip-programmet komprimerer godt og raskt, men bare gjør det med én fil. Derfor, for å pakke flere filer, opprettes først ett tar-arkiv fra dem, og etter det er det allerede pakket med Gzip-programmet. Dessuten er det verdt å merke seg at det primære tjærearkivet praktisk talt ikke komprimerer informasjon, men bare kombinerer det til en fil. I den endelige versjonen får vi et arkiv med dobbel filtype filename.tar.gz eller filename.tgz

Hvordan lage et tar.gz-arkiv riktig?

På Windows OS

Du må bruke arkiveringsmaskinen 7-zip.

På Linux OS

Vi kobler til vertsserveren via SSH-protokollen ved hjelp av PuTTY-programmet. Skriv inn på kommandolinjen:

Denne kommandoen vil opprette et file.tar-arkiv fra alle filene i /full/path-katalogen. Men fordi tar arkiverer ikke, men kombinerer bare filer, så må vi komprimere den igjen ved å bruke Gzip:

tar -czvf file.tar.gz /full/path

Som et resultat vil vi få file.tar.gz som vil være plassert i /full/path-katalogen.

tar kommando syntaks regler

tar [-nøkler] [navn på arkivet som skal opprettes] [hva skal pakkes\hvor pakkes]

Angående nøklene:
c (opprett) - opprett en arkivfil

z (gzip) - arkiver en fil ved hjelp av gzip

Hvordan pakke ut et tar.gz-arkiv på riktig måte?

På Windows OS

På Linux OS

På vertsserveren - koble til serveren via SSH-protokollen ved å bruke PuTTY-programmet. Skriv inn på kommandolinjen:

Syntaks

tar [-nøkler] [arkiv som skal pakkes ut eller bane til det]

x (extract) - pakk ut filer
v (verbose) - vis utførelsesinformasjon
f (fil) - indikerer at du må lage en fil med navnet som er spesifisert etter nøklene (i vårt eksempel, file.tar eller file.tar.gz), hvis du ikke spesifiserer denne nøkkelen, vil standardnavnet brukes eller det vil oppstå problemer.
file.tar.gz er navnet på arkivet som må pakkes ut.

På Unix (dette er Linux, Freebsd, etc.)-systemer, er tar-kommandoen det viktigste arkiveringsverktøyet. Å forstå denne kommandoens mange alternativer vil tillate deg å mestre arkivmanipulering.

I denne artikkelen vil jeg se på forskjellige eksempler, inkludert å lage et tar-arkiv (ved å bruke gzip- og bzip-komprimering), trekke ut en enkelt fil eller katalog, se innholdet i et tar-arkiv, validere integriteten til et tar-arkiv, finne ut av forskjellen mellom et tjærearkiv og filsystem, beregne arkivstørrelsen før du oppretter den, og andre.

Opprette et arkiv ved å bruke tar-kommandoen

Oppretting og utpakking av et tar-arkiv gjøres ved å bruke cvf-alternativet. Slik ser den grunnleggende kommandoen for å lage et arkiv ut:

$tar cvf arkivnavn.tar dirname/

La oss se på hver nøkkel fra alternativet separat:

  • c – opprette et nytt arkiv
  • v – utgang av en liste over filer for behandling
  • f – arkivfilnavn

For å lage et gzip-komprimert arkiv må du bruke cvzf-alternativet. Det forrige cvf-alternativet bruker ikke noen komprimering i det hele tatt. For å bruke gzip-komprimering, legg til z-alternativet som vist nedenfor:

$ tar cvzf arkivnavn.tar.gz dirname/

  • z – pakker arkivet ved hjelp av gzip-komprimering

Personlig foretrekker jeg å alltid la cvf-alternativet være uendret og bare legge til de nødvendige nøklene på slutten hvis komprimering er nødvendig. For eksempel cvfz eller cvfj. Det er lettere å huske på denne måten.

La oss nå lage et arkiv ved å bruke bzip2-komprimering:

$ tar cvfj arkivnavn.tar.bz2 dirname/

  • j – pakker arkivet ved hjelp av bzip2-komprimering

gzip eller bzip2?Å komprimere og dekomprimere et arkiv ved hjelp av bzip2 tar litt lengre tid og selve arkivet er mindre.

Opprette et tar-arkiv med gjeldende dato i arkivnavnet

Hvis du lager en sikkerhetskopi, er det svært viktig å vite nøyaktig når den ble opprettet. Den enkleste måten å finne ut om dette på er fra navnet hans.

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

Pakker ut et arkiv ved å bruke tar-kommandoen

For å pakke ut arkivet, bruk xvf-kommandoen:

$tar xvf arkivnavn.tar

  • x – pakk ut filer fra arkivet

For å pakke ut tar.gz bruk alternativet xvfz:

$tar xvfz arkivnavn.tar.gz

For å pakke ut et bzip2-komprimert arkiv, bruk xvfj-alternativet:

$tar xvfj arkivnavn.tar.bz2

Vise filer i et tar-arkiv

For å se innholdet i et tar-arkiv, bruk tvf-alternativet.

$tar tvf arkivnavn.tar

For å se innholdet i et arkiv komprimert med gzip, bruk tvfz-alternativet

$ tar tvfz arkivnavn.tar.gz

For å se innholdet i et arkiv komprimert med bzip2, bruk tvfj-alternativet

$tar tvfj arkivnavn.tar.bz2

Trekker ut en enkelt fil fra tar, tar.gz, tar.bz2 arkiver

Det er situasjoner når du trenger å pakke ut bare 1 fil fra et stort arkiv:

$ tar xvf archive_file.tar bane/til/fil

For gzip og bzip2 komprimerte arkiver, bruk henholdsvis:

$ tar xvfz archive_file.tar.gz path/to/file $ tar xvfj archive_file.tar.bz2 path/to/file

Trekker ut en enkelt mappe fra tar, tar.gz, tar.bz2 arkiver

Å pakke ut en individuell mappe, inkludert alle undermapper og filer, utføres på samme måte som å pakke ut en individuell fil:

$ tar xvf archive_file.tar /path/to/dir/

For å trekke ut flere mapper fra et arkiv, spesifiser navnene deres i rekkefølge:

$ tar xvf archive_file.tar /path/to/dir1/ /path/to/dir2/

For komprimerte arkiver gjelder det samme, bare ved å bruke tilleggstaster:

$ tar xvfz archive_file.tar.gz /path/to/dir/ $ tar xvfj archive_file.tar.bz2 /path/to/dir/

Pakk ut en gruppe filer fra tar-, tar.gz-, tar.bz2-arkiver ved å bruke regulære uttrykk

For å trekke ut en gruppe filer basert på visse egenskaper i navnet kan du bruke vanlig uttrykk. La oss for eksempel trekke ut alle filene med fra arkivet html utvidelse.

$ tar xvf archive_file.tar --wildcards "*.pl"

Legge til en fil eller mappe til et eksisterende tar-arkiv

For å legge til en ny fil eller mappe til et eksisterende arkiv, bruk -r-alternativet:

$ tar rvf arkivnavn.tar ny fil

Å legge til en mappe gjøres på samme måte:

$ tar rvf arkivnavn.tar newdir/

Husk at operasjonen med å legge til filer og mapper bare fungerer for ukomprimerte tar-arkiver.

Bestemme tjærearkivstørrelsen før du oppretter den

Følgende kommando lar deg bestemme størrelsen på et tar.gz- eller tar.bz2-arkiv før du oppretter det (i KB)

Tar -czf - /katalog/til/arkiv/ | wc –c $ tar -cjf - /katalog/til/arkiv/ | wc -c


Et enkelt sikkerhetskopieringsskjema er å lagre alt én gang, og deretter sikkerhetskopiere alt som har endret seg siden forrige kopi. Den første kopien kallesfull backup , påfølgende inkrementelle sikkerhetskopier . En komplett kopi passer ofte ikke helt inn på et bånd (eller en diskett). Gjenoppretting fra inkrementelle kopier kan kreve mange ganger mer mengde arbeid enn fra fullt. Gjenoppretting kan optimaliseres slik at du alltid sikkerhetskopierer alt fra forrige fullkopi; denne banen krever litt mer arbeid, men det vil aldri være behov for å gjenopprette mer enn en hel og en inkrementell kopi.

Hvis du ønsker å lage kopier daglig og har seks bånd, kan du bruke bånd 1 for den første hele kopien (for eksempel fredag) og bånd 2 til 5 for trinnvise kopier (mandag-torsdag). Deretter lager du en ny full kopi på bånd 6 (andre fredag), og begynner å lage inkrementelle kopier igjen på bånd 2-5. Du vil ikke overskrive bånd 1 før du har en ny full kopi, slik at det ikke skjer noe dårlig mens du lager en ny full kopi. Når du har laget en fullstendig kopi på bånd 6, kan du lagre bånd 1 et annet sted i tilfelle de andre sikkerhetskopiene dine blir ødelagt. Når du skal lage neste fulle kopi, velger du og bruker tape 1.

Hvis du har mer enn seks kassetter, kan du bruke den ekstra plassen til hele kopier. Hver gang du lager en full kopi, bruker du det eldste båndet. På denne måten kan du ha fullstendige kopier av de foregående ukene, noe som er bra hvis du vil finne en gammel, nå slettet fil, eller en gammel versjon av en fil.

Sikkerhetskopier med tjære

En fullstendig kopi kan enkelt lages med kommandoentjære :

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

Eksemplet ovenfor bruker GNU-versjonentjære og lange alternativnavn. Tradisjonell versjontjære aksepterer bare et enkelt tegn som parameter. GNU-versjonen kan også håndtere kopier som ikke får plass på et enkelt bånd eller diskett, og veldig lange baner; ikke alle tradisjonelle versjoner kan gjøre dette. Linux bruker kun GNUtjære .

Hvis kopien din ikke får plass på ett bånd, må du bruke alternativet--flervolum (-M):

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

tar: Fjerner innledende / fra absolutte banenavn i arkivet

Forbered volum #2 for /dev/fd0H1440 og trykk retur:

Vær oppmerksom på at du må formatere diskettene før du begynner å kopiere. Du kan bruke et annet vindu eller virtuell terminal til å kjøre formatkommandoer nårtjære vil be om en ny diskett.

Etter at du har laget en kopi, må du sjekke den ved å bruke alternativet--sammenlignet ):

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

usr/src/

usr/src/linux

....

Unnlatelse av å bekrefte kopien din betyr at du ikke vil legge merke til at kopien din ikke fungerer før du mister de originale dataene.

En inkrementell kopi kan utføres med kommandoentjære med --newer (-N ) alternativet:

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

tar: Fjerner innledende / fra absolutte banenavn i arkivet

usr/src/

usr/src/linux-1.2.10-includes/

usr/src/linux-1.2.10-includes/include/linux/modules/

usr/src/linux-1.2.10-includes/include/asm-generic/

usr/src/linux-1.2.10-includes/include/asm-i386/

usr/src/linux-1.2.10-includes/include/asm-mips/

usr/src/linux-1.2.10-includes/include/asm-alpha/

usr/src/linux-1.2.10-includes/include/asm-m68k/

usr/src/linux-1.2.10-includes/include/asm-sparc/

usr/src/patch-1.2.11.gz

Dessverre, tjære kan ikke oppdage inodenendring filinformasjon, for eksempel endre tilgangsrettigheter eller gi nytt navn til en fil. Problemet løses ved å bruke kommandoenfinne og sammenligne gjeldende tilstand til filsystemet med lister over filer som ble sikkerhetskopiert tidligere. Skript og programmer for å automatisere denne prosessen kan bli funnet på Linux ftp-servere.

Utvinning ved hjelp av tjære

Team tjære med --extract-alternativet (-x ) trekker ut filer:

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

usr/src/

usr/src/linux

usr/src/linux-1.2.10-includes/

usr/src/linux-1.2.10-includes/include/

usr/src/linux-1.2.10-includes/include/linux/

...

Du kan også bare trekke ut spesifiserte filer eller kataloger (som inkluderer alle filene og underkatalogene deres), viser dem på kommandolinjen:

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

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

Bruk alternativet--list(-t ), hvis du bare vil se hvilke filer som er på sikkerhetskopivolumet:

# tar --list --fil /dev/fd0H1440

usr/src/

usr/src/linux

usr/src/linux-1.2.10-includes/

usr/src/linux-1.2.10-includes/include/

usr/src/linux-1.2.10-includes/include/linux/

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

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

...

noter dettjære leser alltid sikkerhetskopivolumet sekvensielt, så for store volumer er prosessen ganske treg. Tilfeldig tilgang kan imidlertid ikke brukes når bånd eller andre serielle medier brukes.

tjære behandler ikke slettede filer Ikke sant. Hvis du må gjenopprette et filsystem fra en fullstendig og inkrementell kopi, og slettet filen mellom kopiering, vil den eksistere igjen etter at du har utført gjenopprettingen. Dette kan være et stort problem hvis filen lagrer viktige data som ikke lenger skal være tilgjengelige.



mann tar Bruk: tar [ALTERNATIV...] [FIL]...
GNU `tar" er for å lagre filer
til magnetbånd eller arkiv på disk og
gjenoppretting separate filer fra
arkiv.

Eksempler:
tar -cf archive.tar foo bar # Lag archive.tar fra filer
foo og bar.
tar -tvf archive.tar # Skriv ut detaljert liste
alle filene i archive.tar-arkivet.
tar -xf archive.tar # Pakk ut alle filer
fra archive.tar.

Grunnleggende driftsmodus:

A, --catenate, --concatenate ved å legge ved tar-filer
til arkivet
-c, --create opprett et nytt arkiv
-d, --diff, --sammenlign søk etter forskjeller mellom
arkiv og fil
system
--slett slett fra arkiv (ikke på
magnetbånd!)
-r, --tilføy legge til filer til slutten
arkiv
-t, --liste listeinnhold
arkiv
--test-label sjekker arkivvolumetiketten
og gå ut
-u, --update legger kun til i arkiv
nyere filer
-x, --extract, --hent pakkefiler fra
arkiv

Modifikatorer:

Sjekk enhet sjekk enhetsnumre når
skape inkrementell
arkiver (standard)
-g, --listed-incremental=FIL
tilleggsbehandling
reservere en ny
GNU-format
-G, --inkrementell behandling inkrementell
reservere gamle
GNU-format
--ignore-failed-read ikke avslutt når
ikke-null status for
uleselige filer
-n, --seek arkivsøk er tilgjengelig
--no-check-device ikke sjekk enhetsnumre når du oppretter
inkrementelle arkiver
--occurrence[=N] behandler bare Nth
hendelser for hver
fil i arkivet. Dette alternativet
sant bare i kombinasjon med
en av underkommandoene --delete,
--diff, --extract eller --list, og når
listen over filer er spesifisert enten i
kommandolinje, eller
via -T-alternativet. Misligholde
N er lik 1.
--sparse-version=MAJOR[.MINOR]
installer versjon
format brukt
vakuum (antyder
--sparsom)
-S, --sparsom effektiv behandling
sparsomme filer

Overskriv kontroll:

K, --keep-old-filer overskriver ikke
eksisterende filer når
utvinning
--keep-newer-filer overskriver ikke
eksisterende filer,
som er nyere enn deres
arkiverte kopier
--no-overwrite-dir lagre metadata
eksisterende kataloger
--overwrite overskriver eksisterende
filer ved utpakking
--overwrite-dir overskriv eksisterende
filer ved utpakking (av
misligholde)
--recursive-unlink sletter hele hierarkiet til
pakke ut katalogen
--remove-files fjerner filer etter at de er det
legges til i arkivet
-U, --unlink-first fjerner hver fil før
trekke ut på toppen av den
-W, --verify forsøk på å bekrefte arkivet
etter å ha tatt det opp

Valg av utgangsstrøm:

Ignorer-kommando-feil ignorer koder
ferdigstillelse av datterselskaper
prosesser
--no-ignore-command-error teller ikke-null koder
ferdigstillelse av datterselskaper
behandler som en feil
-O, --to-stdout pakke ut filer til
standard utgang
--to-command=KOMMANDO
omdirigere
utpakkede filer til en annen
program

Behandler filattributter:

Atime-preserve[=METHOD]
spare tilgangstid
kopierte filer av
restitusjonstid
etter lesing (METHOD="erstatt";
brukes som standard)
eller ikke stille inn tiden
først av alt
(METHOD="system")
--delay-directory-restore setter ikke tid
endringer og tilgangsrettigheter
utpakkede kataloger opp til
prosessavslutning
utdrag
--group=NAVN tvunget
sett NAME til
som en gruppe for
lagt til filer
--mode=MODUS tvunget
installer (karakter)
Tilgang MODUS for
lagt til filer
--mtime=DATO-ELLER-FIL
installere for
lagt til mtime-filer fra
DATO-ELLER-FIL
-m, --touch ikke trekke ut tid
filendringer
--no-delay-directory-restore
avbryte alternativet
--delay-directory-restore
--no-same-owner ekstraktfiler som egne
egen
--no-same-permissions gjelder bruker umask
ved uttak av rettigheter
tilgang fra arkivet (av
standard for normal
brukere)
--numeriske eiere bruker tall i stedet
eier/gruppenavn
--owner=NAME tvunget
sett NAME til
som eier for
lagt til filer
-p, --bevar-tillatelser, --samme-tillatelser
hente informasjon om
tilgangsrettigheter til filen (av
standard for
superbruker)
--preserve tilsvarende -p og -s
--samme eier prøver å pakke ut filer fra
samme eier
-s, --bevar-ordre, --samme-rekkefølge
sortere ut
navn i samme rekkefølge som
og i arkivet

Velge og bytte enheter:

F, --file=ARKIV bruk fil eller
enhetsARKIV
--force-lokal arkivfil er
lokalt, selv om
inneholder et kolon
-F, --info-script=NAME, --new-volume-script=NAME
kjør skriptet etter
slutten av hvert bånd
(underforstått
bruk -M)
-L, --tape-length=N bytt bånd etter opptak
NUMBER x 1024 byte
-M, --flervolum
opprettelse/oppføring/henting
arkiver med flere bind
--rmt-kommando=KOMMANDO
bruk det spesifiserte
COMMAND rmt i stedet for rmt
--rsh-kommando=KOMMANDO
bruk fjernkontrollen
COMMAND i stedet for rsh
--volno-file=FILbruk/oppdatering
volumnumre i FILE

Bryte opp i blokker:

B, --blocking-factor=BLOKKER
antall BLOKKER x 512 byte pr
ta opp
-B, --les-full-poster brytes opp i blokker på nytt
når du leser (for kanaler
4.2BSD)
-i, --ignore-null ignorerer null blokker
arkivert (dvs. EOF)
--record-size=N ANTALL byte per post,
multiplum av 512

Arkivformat:

H, --format=FORMAT opprett et arkiv i spesifisert
format

FORMAT kan være:

GNU-format GNU tar 1.13.x
oldgnu GNU-format som i tar<= 1.12
pax-format POSIX 1003.1-2001 (pax)
posix tilsvarende pax
ustar-format POSIX 1003.1-1988 (ustar)
v7 gammelt tjæreformat V7

Gammelt arkiv, --portabilitet
tilsvarende --format=v7

Pax-option=søkeord[[:]=verdi][,søkeord[[:]=verdi]]
kontrollere nøkkelord
pax
--posix tilsvarende --format=posix
-V, --label=TEXT opprett et arkiv med volumnavnet
TEKST; på
oppføring/henting
bruk TEXT i
som en mal
erstatninger

Komprimeringsalternativer:

A, --auto-compress bruk arkivsuffiks for å bestemme
komprimeringsprogrammet
-j, --bzip2 sende arkiv gjennom bzip2
--lzma filtrerer arkivet gjennom lzma
--use-compress-program=PROG
sende arkivet gjennom
PROG (må støtte
-d)
-z, --gzip, --gunzip, --ungzip hopp over arkivet
gzip
-Z, --compress, --uncompress hopp over arkivet
komprimere

Velge lokale filer:

Add-file=FIL legg til den angitte FIL til
arkiv (nyttig hvis navnet
starter med bindestrek)
--backup[=ADMINISTRER]
lage en kopi før
fjerning, STYRING
versjonsvalg
-C, --directory=DIRECTORY gå til DIRECTORY
--exclude=PATTERN ekskluder filer,
definert av PATTERN
--exclude-cacher ekskluderer innhold
kataloger med filen CACHEDIR.TAG
bortsett fra ham selv
fil med tagger
--exclude-caches-all ekskluder kataloger,
som inneholder CACHEDIR.TAG-filen
--exclude-caches-under ekskluder alt innhold
kataloger som inneholder filen
CACHEDIR.TAG
--exclude-tag=FIL ekskluderer kataloger,
som inneholder FIL, for
bortsett fra selve FILEN
--exclude-tag-all=FIL ekskluder kataloger med
FIL
--exclude-tag-under=FIL
ekskluder alt innhold
kataloger som inneholder FILE
--exclude-vcs ekskluderer CVS-kataloger
-h, --dereference etterfulgt av symboler
lenker og lagre filer,
som de peker på
--hard-dereference følg harde lenker; arkiv og
dump filene de
referere til
-K, --start-fil=MEDLEM-NAVN
start med medlem MEMBER-NAME
i arkivet
--newer-mtime=DATE sammenligne dato og klokkeslett,
bare hvis endret
data
--no-recursion deaktiver automatisk
nedstigning til kataloger
--no-unquote fjerner ikke sitater fra navn
filer lest fra
med alternativet -T
--null -T leser linjer,
slutter på null,
deaktiverer -C-alternativet
-N, --newer=DATO-ELLER-FIL, --after-date=DATO-ELLER-FIL
lagre bare disse filene
som er nyere
DATO-ELLER-FIL
--ett-filsystem forbli lokalt
filsystemet når
opprette et arkiv
-P, --absolute-names fjerner ikke innledende `/" fra
filnavn
--rekursjon rekursiv nedstigning på
kataloger (standard)
--suffix=LINE lag en kopi før
sletting, overstyrer
normalt suffiks ("~" if
bare det er ikke overstyrt
miljøvariabel
SIMPLE_BACKUP_SUFFIX)
-T, --files-from=FIL laster navn fra FIL
for utvinning eller
opprettelse
--unquote fjern sitater fra navn
filer lest fra
med -T-alternativet (standard)
-X, --exclude-from=FILE ekskluderer mønstre,
oppført i FIL

Konvertering av filnavn:

Strip-components=N fjern det angitte NUMBER
innledende komponenter fra
filnavn før
utdrag
--transform=EXPANSION
bruk erstatning
sed extensions for
filnavnkonverteringer

Navn jokertegn malalternativer
filer (påvirker inkluderingsmønstre og
unntak):

Startmønstre for forankrede filnavn
--ignore-case ignorer case
--ikke forankrede mønstre etter "/" (av
standard for ekskludert)
--no-ignore-case-sensitive (av
misligholde)
--no-jokertegn eksakt samsvar
linje
--no-wildcards-match-slash masker stemmer ikke overens
"/"
--jokertegn bruker masker (av
standard for ekskludert)
--wildcards-match-slash-masker samsvarer med "/" (av
standard for ekskludert)

Informasjonsutgang:

Sjekkpunkt[=N] viser fremdriftsmeldinger
utførelse hver
ANTALL poster (standard
10)
--checkpoint-action=ACTION utfør ACTION på hvert sjekkpunkt
--index-file=FIL sender detaljerte utdata
data i FILE
-l, --check-links utgangsmeldinger hvis
Ikke alle lenker lagres
--no-quote-chars=STRING
deaktiver sitering
tegn fra STRING
--quote-chars=STRING valgfritt
sitat karakterer fra
LINJER
--quoting-style=STYLE satt stil
siterer navn. Verdier
for STIL se nedenfor
-R, --blokknummer skrive ut blokknummer
arkiv i hver melding
--show-defaults viser tjæreverdier med
misligholde
--vis-utelatt-dir ved oppføring av oppføring eller
utdrag vis alle
kataloger, ikke
tilsvarende tilstanden
Søk
--vis-transformerte-navn, --vis-lagrede-navn
vis filnavn
eller arkiver etter
transformasjon
--totals[=SIGNAL] utgang totalt antall byte
etter behandling av arkivet; Med
argument - konklusjon av det generelle
antall byte etter levering
dette SIGNALET. Tillatt
signaler: SIGHUP, SIGQUIT, SIGINT, SIGUSR1
og SIGUSR2. Det er også lov
bruk navn uten
prefiks SIG
--utc utskriftsfil endringsdato
i UTC-format
-v, --verbose detaljert liste
behandlede filer
-w, --interactive, --bekreftelse
be om bekreftelse
for hver handling

Kompatibilitetsalternativer:

O på skapelsen, tilsvarende
--gammelt arkiv; når du trekker ut,
tilsvarende --no-same-eier

Andre muligheter:

Hjelp utgang av denne hjelpen
--begrense deaktivert bruk
noen potensielt
farlige alternativer
--bruk utgang kort melding
om bruk
--versjon utgangsprogramversjon

Obligatoriske eller valgfrie argumenter
for lange alternativer er også
obligatorisk eller valgfritt for
tilsvarende korte alternativer.

Suffikset for sikkerhetskopier er `~", med mindre det er det
installert via --suffiks
eller SIMPLE_BACKUP_SUFFIX. Versjonskontroll kan
bli installert
via --backup eller VERSION_CONTROL. Verdier kan evt
være:

Ingen, av ikke lag sikkerhetskopier
t, nummerert opprette nummerert
sikkerhetskopier
null, eksisterende nummererte, hvis de finnes
nummererte eksemplarer, ellers rene
aldri, enkelt skape alltid enkelt
sikkerhetskopier

Gyldige argumenter for --quoting-style-alternativer:

Bokstavelig
skall
skall-alltid
c
c-kanskje
flukt
lokalitet
clocale

Standardverdiene for *denne* taren er:
--format=gnu -f- -b20 --quoting-style=escape --rmt-command=/usr/sbin/rmt
--rsh-kommando=/usr/bin/rsh

Tar kommandolinjeverktøyet brukes til å arbeide med arkiver på UNIX-baserte operativsystemer. Med dens hjelp kan du arkivere data og optimere bruken av diskplass.

Opprette og pakke ut arkiver

Skape

Opprettelsen utføres med en nøkkel c. Syntaksen er som følger:

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

Eksempel på opprettelse:

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

* i dette eksemplet vil det bli opprettet et arkiv archive.tar.gz brukerens hjemmekatalog ( /home/dmosk)
** Hvor z— komprimer arkivet i gzip (uten denne parameteren komprimerer ikke tar, men lager en såkalt tarball); c— nøkkel for å lage et arkiv; v— detaljert modus, det vil si med prosessen vist på skjermen (veldig praktisk for å overvåke fremdriften i arbeidet, men i skript kan det gå glipp av); f- bruk en fil (vi spesifiserer den definitivt, siden vi stort sett jobber med filer).

Pakke ut

Utpakking utføres med nøkkel x med syntaks:

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

Eksempel på utpakking:

tar -xvf archive.tar.gz

Eksempler

gz

Pakker ut .gz-filen:

tar -xvf archive.tar.gz

* hvis det oppstår en feil Dette ser ikke ut som et tjærearkiv, kan du bruke kommandoen gzip -d archive.tar.gz.

bz2

tar -xvjf archive.tar.bz2

* nøkkel j er ansvarlig for å jobbe med bz2.

Hvis systemet klager på bzip2, må du installere det:

yum installer bzip2

apt-get install bzip2

pkg installer bzip2

* henholdsvis for CentOS (RPM-basert), Ubuntu (deb-basert), FreeBSD (BSD-basert).

Hvis vi ser en feil tar: Ukjent arkivformat, la oss bruke følgende kommando:

bzip2 -d archive.tar.bz2

gzip

tar -xvzf archive.tar.gzip

* z-tasten er ansvarlig for å jobbe med gzip.

tgz

Pakker ut som gzip:

tar -xvzf archive.tgz

Pakk ut til en bestemt mappe

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

* nøkkel -C brukes til å spesifisere mappen der filene fra arkivet skal pakkes ut.

Utpakking uten undermappe

Denne metoden kan brukes til å pakke ut i en forhåndsforberedt katalog. Det vil være en viss effekt av å gi nytt navn til katalogen eller en analog av "Pakk ut her":

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

* katalog /home/admin/mytar må opprettes på forhånd; --strip-komponenter 1 vil hoppe over én undermappe inne i arkivet.

Ekskluderer filer med maske

Hvis du trenger å hoppe over noen filer, skriv inn kommandoen med --exclude-bryteren:

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

* i dette eksemplet vil vi lage et arkiv archive.tar.gz, som ikke vil inneholde filer som begynner med sess_.

Beskrivelse av tjærenøkler

Kommandoer for handling

* Du kan ikke bruke flere av tastene ovenfor i én kommando.

Ytterligere alternativer

Nøkkel Beskrivelse
--atime-preserve La det samme tilgangstidsstempelet for filen.
-b N Sett blokkstørrelsen til N x 512.
-C Endre katalog. Som standard brukes den vi er i.
--kontrollpunkt Vis mappenavn når du leser en arkivfil.
-G Bruk det gamle inkrementelle sikkerhetskopieringsformatet når du viser eller henter.
-g Bruk det nye inkrementelle sikkerhetskopieringsformatet når du viser eller henter.
-h Ikke dupliser symbolske lenker. Bare filene som disse symbolkoblingene peker til.
-Jeg Ignorer blokker med nuller.
-j Bruker bzip2.
--ignore-failed-read Ignorer ulesbare filer.
-k Ved utpakking erstattes ikke eksisterende filer med de tilsvarende filene fra arkivet.
-L N Skifter magnetbånd etter N*1024 byte.
-m Når du henter, ignorer objektets endringstid.
-M Arkiver med flere bind.
-N DATO Lagre bare nyere filer i forhold til DATE
-O Direkte utgang til standardutgang.
-s Henting av beskyttet informasjon.
-P Fjerner ikke innledende skråstrek (/) fra navn.
-s Sortering av filer under utvinning.
--bevare Samme som -ps
--fjern-filer Slett kildefiler etter å ha lagt til i arkivet.
--samme eier Bevar eier ved uttak.
--totaler Utdatabyte når du oppretter et arkiv.
-v Handlingslogging – viser en liste over objekter som en handling skjer på.
-V NAVN Opprette et arkiv på et volum merket NAME.
--versjon Vis tjæreversjon.
-w Krev bekreftelse for hver handling.
-W Sjekker arkivet etter opptak.
--ekskluder FIL Ekskluder filen FILE.
-X FIL Ekskluder FILE-filer.
-Z Filtrerer arkivet ved hjelp av komprimering.
-z Bruker gzip.

* den gjeldende listen over alternativer kan fås med kommandoen mann tar.