I denne artikkelen vil vi forklare hvordan du bruker Rsync til å kopiere filer med noen praktiske eksempler. Vi vil også forklare bruken av Rsync i kopiering av en enkelt fil, flere filer og katalog til både lokale og eksterne systemer. Vi vil dekke hvordan du bruker Rsync til:
Vi har forklart kommandoene og prosedyren som er nevnt i denne artikkelen på en Ubuntu 20.04 LTS. Du trenger kommandolinjeterminalen for å kopiere filer ved hjelp av Rsync. For å åpne kommandolinjeterminalprogrammet, bruk CTRL+ALT+T -tastaturet snarvei.
Installere Rsync
Rsync kommer forhåndsinstallert i Ubuntu 20.04 LTS. Imidlertid, hvis det fjernes ved et uhell fra systemet, kan du installere det som følger:
$ sudo apt install rsync
Her er noen av de ofte brukte alternativene som kan brukes med Rsync:
-A: Arkivmodus
-V: viser detaljer om kopieringsprosessen
-P: viser fremdriftslinjen
-R: Kopierer data rekursivt
-Z: komprimerer data
-Spørsmål: Undertrykk utgangen
Kopier filer og kataloger lokalt
Den generelle syntaksen til Rsync er:
$ rsync [alternativ] [kilde] [destinasjon]
Kopier en enkelt fil lokalt
Hvis du vil kopiere en fil fra et sted til et annet i systemet ditt, kan du gjøre det ved å skrive Rsync etterfulgt av kildefilnavnet og destinasjonskatalogen.
For eksempel å kopiere en enkelt fil "File1.txt ”fra den nåværende plasseringen som er hjemmekatalog til ~/dokumenter katalog, ville kommandoen være:
$ rsync/home/tin/file1.txt/home/tinn/dokumenter
Merk: I stedet for “/Home/Tin/File1.txt ”, vi kan også skrive“ File1 ”ettersom vi for tiden jobber i hjemmekatalogen. Vi kan også bruke ~/dokumenter i stedet for å nevne hele banen som "/home/tin/dokumenter".
Kopier flere filer lokalt
Hvis du vil kopiere flere filer på en gang fra et sted til et annet i systemet ditt, kan du gjøre det ved å skrive Rsync etterfulgt av kildefilernavn og destinasjonskatalogen.
For eksempel å kopiere filene “File2 for eksempel for eksempel.TXT ”og“ File3.txt ”fra hjemmekatalogen til ~/Documents Directory, kommandoen ville være:
$ rsync/home/tin/file2.TXT/HOME/TIN/FILE3.txt/home/tinn/dokumenter
For å kopiere alle filene med samme utvidelse, kan du bruke Asterisk (*) -symbol i stedet for å spesifisere filnavnene individuelt. For eksempel å kopiere alle filene fra hjemmekatalogen som slutter med ".ZIP ”utvidelse til ~/Documents -katalogen, vi bruker:
$ rsync/home/tin/*.Zip ~/Dokumenter
Kopier kataloger lokalt
Hvis du vil kopiere en katalog med underkatalogen og alt innhold fra et sted til et annet i systemet ditt, kan du gjøre det som ved å skrive Rsync etterfulgt av kilde- og destinasjonskatalogen.
For å kopiere "Sample" -katalogen til "Test/" -katalogen i hjemmekatalogen, vil kommandoen være:
$ rsync -av/home/tin/prøve/hjemme/tinn/test
Merk: Spesifisere “/” etter kildekatalogen kopierer bare innholdet i katalogen. Hvis vi ikke spesifiserer “/” etter kildekatalogen, vil kildekatalogen også bli kopiert til destinasjonskatalogen.
Som i følgende utdata, kan du se at kildekatalogen vår "prøve" også er kopiert til destinasjonskatalogen (som vi har brukt "prøve" i stedet for "prøve/" som kildekatalog).
Rsync støtter trinnvis overføring som du kan se i output ovenfor at den bare overfører filene som er nye eller oppdaterte.
Kopier filer basert på maksimal størrelse
Mens vi kopierer, kan vi også spesifisere den maksimale størrelsen på filer som kan kopieres med alternativet "-max-størrelse". For å kopiere filene som ikke er større enn 2000k fra ~/nedlastinger til ~/Documents Directory, ville kommandoen være:
$ rsync -a - -max -size = 2000k/home/tin/downloads/*/home/tin/documents
Denne kommandoen vil kopiere alle filene fra ~/nedlastinger til ~/Documents Directory bortsett fra de som er større enn 2000k.
Kopier filer basert på minimumsstørrelse
Tilsvarende kan vi også spesifisere minimumsstørrelsen på filer som kan kopieres med alternativet "-min-størrelse". For å kopiere filene som ikke er mindre enn 5m fra ~/nedlastinger til ~/Documents Directory, vil kommandoen være:
$ rsync -a -min -size = 5m/home/tin/downloads//home/tin/documents
Denne kommandoen vil kopiere alle filene fra ~/nedlastinger til ~/Documents -katalogen bortsett fra de som er mindre enn 5m.
Ekskludere filer
Mens du kopierer filer fra en katalog til en annen, kan du ekskludere noen filer ved å bruke alternativet "-Exclude" etterfulgt av filnavnet eller utvidelsen av filtypen.
For eksempel å ekskludere alle .ZIP -filer mens du kopierer filer fra ~/nedlastinger til ~/Documents Directory, ville kommandoen være:
$ rsync -a -exclude = "*.Zip "/Home/Tin/Downloads//Home/Tin/Documents
Kopier filer og kataloger eksternt
Med Rsync kan du kopiere en enkelt fil, flere filer og kataloger til et eksternt system. For å kopiere filer og kataloger eksternt, vil du kreve:
Før du kopierer filer med Rsync, må du sørge for at du får tilgang til det eksterne systemet via SSH:
$ ssh remote_user@remote_ip
Den generelle syntaksen for å kopiere filer og kataloger til et eksternt system som bruker RSYNC:
$ rsync [alternativ] [kilde] [remoteuser@remoteip: destination]
For eksempel å kopiere en enkelt fil "Fil.txt ”fra ~/nedlastinger til eksternt system ~/Documents Directory, kommandoen ville være:
$ rsync -v ~/nedlastinger/file1.txt [email protected]: ~/dokumenter
Tilsvarende for å kopiere katalogen “~/nedlastinger/filer” i et lokalt system med underkatalogen og alt innholdet til "~/nedlastinger/prøver" -katalogen på det eksterne systemet:
$ rsync -rv ~/nedlastinger/filer [email protected]: ~/nedlastinger/prøver
Du kan også kopiere filene og katalogene fra den eksterne maskinen til din lokale maskin. For eksempel å kopiere en "File2.txt ”fra det eksterne systemet til det lokale systemet Desktop:
$ rsync -v [email protected]: ~/nedlastinger/file2.txt ~/desktop/
Tilsvarende å kopiere en katalog fra det eksterne systemet til det lokale systemet
$ rsync -rv [email protected]: ~/nedlastinger/prøve ~/Desktop/Test
Du kan også bruke alle alternativene som -max -størrelse, -min -størrelse, -Exclude og andre mens du kopierer filer til/fra det eksterne systemet.
Rsync er et flott verktøy for å kopiere filer fra kilde til destinasjon enten lokalt eller eksternt. Det inkluderer et stort sett med alternativer som gir deg fleksibilitet og kontroll mens du overfører filer til/fra det eksterne systemet.