Linux
Rsync
Kommando er et kraftig filkopiering og mappesynkroniseringsverktøy. Her er ti vanlige bruk-tilfeller som du vil kunne bruke til dine egne systemer.
Rsync -verktøyet
De
Rsync
Verktøy kopierer filer og kataloger mellom to datamaskiner. Den bruker en
sofistikert algoritme
som skanner katalogtrær for å finne filer på kildedatamaskinen som ikke eksisterer på destinasjonsdatamaskinen. Disse filene overføres til destinasjonsdatamaskinen. Hva gjør
Rync
Så smart er at det kan finne ut hvilke deler av
eksisterende
Filer er endret, og den sender bare
endret porsjoner
.
Du kan bruke
Rsync
å kopiere filer til et annet sted på harddisken din, til en annen harddisk på samme datamaskin, til en
eksternt tilkoblet USB -stasjon
, eller et hvilket som helst annet nettverkstilgjengelig plassering.
På toppen av det,
Rsync
kan eventuelt bevare symbolske lenker, harde lenker og fil
metadata
for eksempel fileierskap, tillatelser og tilgangstider. For å støtte all denne funksjonaliteten,
Rsync
Har mange alternativer og å finne ut av dem alle tar tid. Vi har samlet disse 10 eksemplene for å hjelpe deg i gang. Vi har allerede skrevet om å gjøre sikkerhetskopier med
Rsync
, så vi konsentrerer oss om andre bruksområder her.
For alle sine mange alternativer, strukturen til en
Rsync
Kommandoen er enkel. Vi må tilby kilden, destinasjonen og alternativene vi ønsker å bruke. Du vil sannsynligvis finne det
Rsync
er allerede installert på Linux -datamaskinen din - den var på alle testmaskinene våre - men hvis det ikke er det, vil det definitivt være i distribusjonens depoter.
1. Kopier filer til en annen katalog
Her er et enkelt eksempel for å få oss til å gå. Vi skal kopiere filene fra "Project-Files" -katalogen til "Documents" -katalogen. Vi bruker to alternativer,
-en
(arkiv) alternativet og
-v
(Verbose) Alternativ. Verbose -alternativet forteller
Rsync
For å forklare hva det gjør som det gjør det. De
arkiv
Alternativ bevarer fileierskap og noen andre elementer vi snart ser på.
Ved hjelp av
ls
På "dokumenter" -mappe viser at filene er kopiert.
Samtidig som
Rsync
fungerer, filene er oppført når de er kopiert. Ble fortalt:
- Antall byte som sendes.
-
Antall mottatte byte. Før filoverføringen finner sted,
Rsyncmå finne ut hvilke filer som må overføres. For å gjøre det, må litt informasjon om filene på destinasjonen hentes avRsync. Denne informasjonen er inneholdt i de mottatte byte. - Hastigheten på overføringen.
- Den totale størrelsen på de kopierte filene.
- "Speedup." Dette er forholdet mellom den totale størrelsen delt på summen av de sendte og mottatte byte. Jo høyere dette tallet, desto mer effektiv overføring.
Vi endret tekstfilen i kildekatalogen og gjentok
Rsync
kommando.
Denne gangen den eneste filen som må oppdateres er tekstfilen vi endrer. Speedup -figuren er nå 30.850. Dette er hvor mye mer effektivt det er å kopiere den endrede delen av den enkeltfilen, enn å kopiere alle filene.
De
-en
(Arkiv) -alternativet representerer faktisk en samling av andre alternativer. Det er det samme som å bruke alle disse alternativene:
- r : Arbeid rekursivt gjennom katalogtrær i kildekatalogen og kopier dem til destinasjonskatalogen, og oppretter dem hvis de ikke allerede eksisterer der.
- l : Kopier symlinks som symlinks.
- p : Bevar filtillatelser.
- t : Bevar filmodifiseringstider.
- g : Bevar gruppetillatelser.
- o : Bevar fileierskapet.
- D : Kopier spesielle filer og enhetsfiler. Spesielle filer kan være kommunikasjonssentriske elementer som blir behandlet som filer, for eksempel stikkontakter og første-in, første-ut-rør (Fifos). Enhetsfiler er spesielle filer som gir tilgang til enheter og pseudo-enheter.
Dette er en så ofte brukt kombinasjon som
Rsync
gir
-en
(Arkiv) alternativ som en kortfattet måte å påkalle dem alle på.
2. Kopier en katalog til en annen katalog
Hvis du ser på forrige
Rsync
Kommando vil du se en etterfølgende skråstrek “/” på filstien til kildekatalogen. Dette er betydelig. Det forteller
Rsync
å kopiere
innhold
av katalogen. Hvis du ikke gir den bakovergående skråstreken,
Rsync
vil kopiere katalogen
og
innholdet.
Denne gangen blir katalognavnet lagt til filnavnet når de er oppført. Hvis vi ser inne i destinasjonskatalogen, ser vi at kildemappen er blitt kopiert på tvers av filene inni den.
3. Kopier en katalog til en annen stasjon
Å kopiere filer til et annet sted på samme harddisk gir deg ikke beskyttelse mot en Drivfeil . Hvis den stasjonen gir opp spøkelset, har du mistet kilden og destinasjonskopiene av disse filene. Å kopiere dem til en annen harddisk er en mye mer robust måte å beskytte dataene dine på. Alt vi trenger å gjøre er å gi riktig vei til destinasjonsstasjonen.
Å se på den andre harddisken viser oss at katalogen og filene ble kopiert over til den.
4. Å gjøre et tørt løp først
Før vi ser på hvordan
Rsync
Kan med fordel slette filer for oss, la oss se på hvordan vi kan lage
Rsync
utføre et tørt løp.
I et tørt løp,
Rsync
Går gjennom bevegelsene om å utføre handlingene vi har bedt om, men gjør dem faktisk ikke. Den rapporterer om hva som ville ha skjedd hvis kommandoen hadde blitt utført. På denne måten kan vi sørge for at kommandoen gjør akkurat det vi forventer.
For å tvinge et tørt løp bruker vi
--tørk
alternativ.
Filene som ville blitt kopiert er oppført for oss, og vi får den vanlige statistikken, etterfulgt av meldingen
(Tørr løp)
Slik at vi ikke vet at ingenting faktisk fant sted.
5. Slette filer i destinasjonskatalogen
De
-Slett
Alternativ forteller
Rsync
å slette
filer og kataloger
i
mål
Katalog som ikke er i kildekatalogen. Dette betyr at destinasjonskatalogen vil være en eksakt kopi av kildekatalogen. Vi vil være forsvarlige og bruke
--tørk
alternativ først.
Vi blir informert om at to filer blir slettet. Hvis vi er sikre på at vi ikke bryr oss om at de blir slettet, kan vi fjerne
--tørk
alternativ og utføre kommandoen for ekte.
Denne gangen synkroniseres innholdet i katalogene og de to ekstra filene blir slettet.
6. Slette kildefilene
Du kan velge å slette kildefilene etter en
vellykket overføring
, lager
Rsync
operere mer som et trekk enn en kopi. Hvis overføringen ikke var vellykket, blir ikke kildefilene slettet. Alternativet vi trenger å bruke er
-Fjern kildefiler
.
Merk at filene kan slettes selv om ingen filer blir overført. Det er fordi hvis
Rsync
Sjekker, og alle filene er allerede i destinasjonskatalogen, og det er ingenting for
Rsync
å gjøre,
Rsync
vurderer at en vellykket overføring.
Også,
Rsync
bare sletter
filer
fra kildekatalogen. Den sletter ikke kildekatalogen eller noen underkataloger, bare filene i dem. Vi kan se dette ved å bruke
-R
(rekursiv) alternativ med
ls
, på kildekatalogen.
7. Kopier filer til en ekstern datamaskin
Å synkronisere mapper med en ekstern datamaskin,
Rsync
må installeres på begge datamaskiner. Sett opp SSH -kommunikasjon mellom de to datamaskinene før du prøver å bruke
Rsync
til den eksterne datamaskinen.
Du må kunne logge inn eksternt som en vanlig bruker på den eksterne datamaskinen for
Rsync
å jobbe. Det har ikke noe å si om du bruker en ID og passord for å logge inn, eller om du har satt opp SSH -nøkler for Secure
passordfri
tilgang, men hvis du ikke kan logge inn som bruker, så
Rsync
vil ikke fungere heller.
Hvis du logger inn med et passord,
Rsync
vil be deg om passordet. Hvis du bruker SSH -nøkler for å logge, er i prosessen sømløs.
Det eneste ekstra du trenger å gjøre er å legge til brukerkontonavnet og IP -adressen til den eksterne datamaskinen til starten av destinasjonsfilbanen. Bruk et AT -skilt “
@
”For å skille brukernavnet fra datamaskinnavnet eller IP -adressen, og en kolon”
:
”For å skille datamaskinnavnet eller
IP adresse
Fra katalogstien.
Vi får den samme informasjonen som er rapportert til oss som vi gjør når vi kopierer filer lokalt.
8. Inkluder eller ekskludere filer eller kataloger
Du kan ha filer og kataloger i kildekatalogen som du ikke vil kopiere til destinasjonsdatamaskinen. Du kan
ekskluder dem
bruker
--utelukke
alternativ. På en lignende måte kan du velge å inkludere spesifikke filer og kataloger med
--inkludere
alternativ.
Quirken er at hvis du bruker
--inkludere
Alternativ på egen hånd kopieres alle filer som normalt - inkludert de spesifikt inkluderte filene. For bare å kopiere de inkluderte filene du må
--utelukke
alt annet.
Du kan bruke så mange
--inkludere
og
--utelukke
alternativer i kommandoen din som du vil, men sørg for at du legger din
--inkludere
alternativer før din
--utelukke
alternativer. Forsikre deg også om at du har en etterfølgende skråstrek på kildefilbanen.
Denne kommandoen kopierer bare C -kildekodefiler og CSV -datafiler til destinasjonsdatamaskinen.
De eneste filene som er kopiert er de vi spesifikt inkluderte.
9. Komprimere filer i overføring
De
-z
(Komprimering) Alternativ årsaker
Rsync
for å komprimere de overførte filene. De er ikke lagret som komprimerte filer på destinasjonsdatamaskinen, de er bare komprimert under selve overføringen. Dette kan fremskynde lange overføringer.
10. Overvåking av fremgangen
Når vi snakker om lange overføringer, kan vi legge til litt statistikk slik at vi kan se fremdriften i overføringen.
De
-P
(delvis, fremgang) -alternativet legger faktisk til to alternativer,
--delvis
og
--framgang
. De
--delvis
Alternativ forteller
Rsync
For å holde delvis overførte filer hvis en overføring mislykkes. Dette sparer tid når overføringen startes på nytt.
De
--framgang
Alternativet skriver ut, for hver fil, dataene som er overført i byte og i prosent, hastigheten på overføringen, tiden tatt, antallet på filen som overføres og tellingen på de gjenværende filene.
Utgangen ruller forbi ganske raskt, og det er vanskelig å lese. Du kan forbedre ting litt ved å fjerne
-v
(Verbose) Alternativ fra kommandoen. Selv da er det fortsatt vanskelig å lese når det suser forbi.
Det er ofte mer nyttig å overvåke fremdriften i den samlede overføringen. Du kan gjøre dette med alternativet –Info, og passere det “Progress2” som en parameter.
Som CP på steroider
De
Rsync
Kommandoen er rask, fleksibel og vel verdt tiden det tar å gjøre deg kjent med det. Den grunnleggende formen for en
Rsync
kommando med
-av
Alternativer, kildekatalog og destinasjonskatalog er ikke vanskelig å huske i det hele tatt.
For mange brukssaker er det alt du trenger. Bli komfortabel med det, og resten kommer lett.
- › Hvor billige VPN -er kan koste mer enn du forhandlet for
- › Wyze er nede, det er ikke bare deg
- › Glem spillstasjonsopp
- › Den neste smarte hjemmeenheten din kan ha 5G
- › Slutt å bruke tastaturet og musen som fulgte med PCen din
- › Bose Quietcomfort Earbuds 2 anmeldelse: et skritt fremover for støydempende lyd