rsync

Sådan bruges rsync til at kopiere filer

Sådan bruges rsync til at kopiere filer
Rsync er et kommandolinjeværktøj i Linux, der bruges til at kopiere filer fra en kildeplacering til en destinationsplacering. Du kan kopiere filer, mapper og hele filsystemet og holde filerne synkroniseret mellem forskellige mapper. Det gør mere end bare at kopiere filerne. Det reducerer mængden af ​​data, der sendes over netværket ved kun at sende de filer, der er nye eller opdaterede. Derfor betragtes det som et godt værktøj til filkopiering og sikkerhedskopiering. Rsync understøtter også kopiering af filer til et eksternt system via SSH.

I denne artikel vil vi forklare, hvordan man bruger rsync til at kopiere filer med nogle praktiske eksempler. Vi vil også forklare brugen af ​​rsync til kopiering af en enkelt fil, flere filer og bibliotek til både lokale og eksterne systemer. Vi vil dække, hvordan du bruger Rsync til:

Vi har forklaret kommandoerne og proceduren nævnt i denne artikel på en Ubuntu 20.04 LTS. Du skal bruge kommandolinjeterminalen til at kopiere filer ved hjælp af rsync. For at åbne kommandolinjens terminalapplikation skal du bruge tastaturgenvejen Ctrl + Alt + T.

Installation af Rsync

Rsync leveres forudinstalleret i Ubuntu 20.04 LTS. Men hvis det ved et uheld fjernes fra systemet, kan du installere det som følger:

$ sudo apt installere rsync

Her er nogle af de almindeligt anvendte indstillinger, der kan bruges med rsync:

-a: arkivtilstand
-v: viser detaljer om kopieringsprocessen
-p: viser statuslinjen
-r: kopierer data rekursivt
-z: komprimerer data
-q: undertryk output

Kopier filer og mapper lokalt

Den generelle syntaks for rsync er:

$ rsync [option] [kilde] [destination]

Kopier en enkelt fil lokalt

Hvis du vil kopiere en fil fra et sted til et andet inden for dit system, kan du gøre det ved at skrive rsync efterfulgt af kildefilnavnet og destinationsmappen.

For eksempel at kopiere en enkelt fil “fil1.txt ”fra den aktuelle placering, der er hjemmekatalog til ~ / Dokumenter-katalog, vil kommandoen være:

$ rsync / home / tin / file1.txt / hjem / tin / Dokumenter

Bemærk: I stedet for “/ home / tin / file1.txt ”, kan vi også skrive“ file1 ”, da vi i øjeblikket arbejder i hjemmekataloget. Vi kan også bruge ~ / Documents i stedet for at nævne den fulde sti som "/ home / tin / Documents".

Kopier flere filer lokalt

Hvis du vil kopiere flere filer på én gang fra et sted til et andet inden for dit system, kan du gøre det ved at skrive rsync efterfulgt af kildefilens navn og destinationsmappen.

For eksempel at kopiere filerne “file2.txt ”og“ file3.txt ”fra hjemmebiblioteket til ~ / Dokumenter-biblioteket, kommandoen er:

$ rsync / home / tin / file2.txt / home / tin / file3.txt / hjem / tin / Dokumenter

For at kopiere alle filerne med den samme udvidelse kan du bruge stjerne (*) symbol i stedet for individuelt at angive filnavne. For eksempel at kopiere alle filerne fra hjemmekataloget, der slutter med “.zip ”-udvidelse til ~ / Documents-biblioteket, vi bruger:

$ rsync / hjem / tin / *.zip ~ / Dokumenter

Kopier mapper lokalt

Hvis du vil kopiere et bibliotek med dets underkatalog og alt indhold fra et sted til et andet inden for dit system, kan du gøre det ved at skrive rsync efterfulgt af kilde- og destinationsmappen.

For eksempel, for at kopiere "prøve" -mappen til "test /" -mappen i hjemmekataloget, ville kommandoen være:

$ rsync -av / hjem / tin / prøve / hjem / tin / test

Bemærk: Angivelse af “/” efter kildekataloget kopierer kun indholdet af kataloget. Hvis vi ikke angiver “/” efter kildekataloget, kopieres kildekataloget også til destinationskataloget.

Som i følgende output kan du se, at vores kildekatalog "prøve" også kopieres til destinationsmappen (da vi har brugt "prøve" i stedet for "prøve /" som kildekatalog).

Rsync understøtter trinvis overførsel, som du kan se i ovenstående output, at den kun overfører de filer, der er nye eller opdaterede.

Kopier filer baseret på maksimal størrelse

Under kopiering kan vi også specificere den maksimale størrelse af filer, der kan kopieres med indstillingen “-max-størrelse”. For eksempel, for at kopiere filer, der ikke er større end 2000k fra ~ / Downloads til ~ / Documents-biblioteket, ville kommandoen være:

$ rsync -a --max-size = 2000k / home / tin / Downloads / * / home / tin / Documents

Denne kommando kopierer alle filerne fra ~ / Downloads til ~ / Documents-kataloget undtagen dem, der er større end 2000k.

Kopier filer baseret på minimum størrelse

På samme måde kan vi også specificere den mindste størrelse af filer, der kan kopieres med indstillingen "-min-størrelse". For eksempel, for at kopiere filerne mindst 5M fra ~ / Downloads til ~ / Documents-biblioteket, ville kommandoen være:

$ rsync -a --min-size = 5M / home / tin / Downloads / / home / tin / Documents

Denne kommando kopierer alle filerne fra ~ / Downloads til ~ / Documents-biblioteket undtagen dem, der er mindre end 5M.

Ekskluder filer

Mens du kopierer filer fra et bibliotek til et andet, kan du ekskludere nogle filer ved hjælp af "-ekskluder" -funktionen efterfulgt af filnavnet eller filtypenavnet.

For eksempel at udelukke alle .zip-filer, mens du kopierer filer fra ~ / Downloads til ~ / Documents-biblioteket, kommandoen er:

$ rsync -a --exclude = "*.zip "/ hjem / tin / Downloads / / hjem / tin / Dokumenter

Kopier filer og mapper eksternt

Med Rsync kan du kopiere en enkelt fil, flere filer og mapper til et eksternt system. For at kopiere filer og mapper eksternt, skal du:

Inden du kopierer filer ved hjælp af rsync, skal du sørge for at få adgang til fjernsystemet via SSH:

$ ssh remote_user @ remote_ip


Den generelle syntaks til kopiering af filer og mapper til et eksternt system ved hjælp af rsync:

$ rsync [option] [kilde] [remoteuser @ remoteip: destination]

For eksempel at kopiere en enkelt fil “fil.txt ”fra ~ / Downloads til eksternt system ~ / Dokumentmappe, kommandoen ville være:

$ rsync -v ~ / Downloads / file1.txt umara @ 192.168.72.164: ~ / Dokumenter

På samme måde kopieres "~ / Downloads / files" -mappen i et lokalt system med dets underkatalog og alt indhold til "~ / Downloads / samples" -mappen på det eksterne system:

$ rsync -rv ~ / Downloads / filer umara @ 192.168.72.164: ~ / Downloads / prøver

Du kan også kopiere filerne og mapperne fra den eksterne maskine til din lokale maskine. For eksempel at kopiere en “fil2.txt ”fra fjernsystemet til det lokale systembord:

$ rsync -v umara @ 192.168.72.164: ~ / Downloads / fil2.txt ~ / Desktop /

Tilsvarende at kopiere en mappe fra det eksterne system til det lokale system

$ rsync -rv umara @ 192.168.72.164: ~ / Downloads / prøve ~ / Desktop / test

Du kan også bruge alle indstillinger som -max-størrelse, -min-størrelse, -ekskludere og andre, mens du kopierer filer til / fra fjernsystemet.

Rsync er et fantastisk værktøj til kopiering af filer fra kilde til destination enten lokalt eller eksternt. Det inkluderer et stort sæt valgmuligheder, der giver dig fleksibilitet og kontrol, mens du overfører filer til / fra fjernsystemet.

Sådan bruges GameConqueror Cheat Engine i Linux
Artiklen dækker en vejledning om brug af GameConqueror-snydemotoren i Linux. Mange brugere, der spiller spil på Windows, bruger ofte "Cheat Engine" -a...
Bedste spilkonsolemulatorer til Linux
Denne artikel viser en liste over populære spilkonsolemuleringssoftware, der er tilgængelig til Linux. Emulation er et softwarekompatibilitetslag, der...
Bedste Linux Distros til spil i 2021
Linux-operativsystemet er kommet langt fra dets originale, enkle, serverbaserede udseende. Dette operativsystem er forbedret enormt i de senere år og ...