Kako koristiti rsync za kopiranje datoteka

How Use Rsync Copy Files



Rsync je alat za naredbeni redak u Linuxu koji se koristi za kopiranje datoteka s izvornog mjesta na odredišno mjesto. Možete kopirati datoteke, direktorije i cijeli datotečni sustav te sinkronizirati datoteke između različitih direktorija. To ne čini samo kopiranje datoteka. Smanjuje količinu podataka poslanih preko mreže slanjem samo novih ili ažuriranih datoteka. Zato se smatra izvrsnim alatom za kopiranje i sigurnosno kopiranje datoteka. Rsync također podržava kopiranje datoteka na udaljeni sustav putem SSH -a.

U ovom ćemo članku s nekoliko praktičnih primjera objasniti kako koristiti rsync za kopiranje datoteka. Također ćemo objasniti upotrebu rsync -a u kopiranju jedne datoteke, više datoteka i direktorija na lokalne i udaljene sustave. Pokazat ćemo kako koristiti Rsync za:







  • Kopirajte datoteku/direktorij unutar lokalnog sustava
  • Kopirajte datoteku/direktorij s lokalnog na udaljeni sustav
  • Kopirajte datoteku/direktorij s udaljenog sustava na lokalni

Objasnili smo naredbe i postupak navedene u ovom članku na Ubuntu 20.04 LTS. Za kopiranje datoteka pomoću rsync-a trebat će vam terminal naredbenog retka. Da biste otvorili aplikaciju Terminal naredbenog retka, koristite tipkovni prečac Ctrl+Alt+T.



Instaliranje Rsync -a

Rsync dolazi unaprijed instaliran u Ubuntu 20.04 LTS. Međutim, ako je slučajno uklonjen iz sustava, možete ga instalirati na sljedeći način:



$sudoprikladaninstaliratirsync

Evo nekih uobičajenih opcija koje se mogu koristiti s rsync -om:





–A: način arhiviranja
–V: prikazuje pojedinosti o procesu kopiranja
–P: prikazuje traku napretka
–R: rekurzivno kopira podatke
–Z: komprimira podatke
–Q: potiskivanje izlaza

Lokalno kopirajte datoteke i direktorije

Opća sintaksa rsync je:



$rsync[opcija] [izvor] [odredište]

Lokalno kopirajte jednu datoteku

Ako želite kopirati datoteku s jednog mjesta na drugo unutar vašeg sustava, to možete učiniti upisivanjem rsync nakon čega slijedi naziv izvorne datoteke i odredišni direktorij.

Na primjer, za kopiranje jedne datoteke file1.txt s trenutne lokacije koja je kućni direktorij u direktorij ~/Documents, naredba bi bila:

$rsync/Dom/vjerujte/file1.txt/Dom/vjerujte/Dokumenti

Napomena: Umjesto /home/tin/file1.txt, možemo upisati i file1 jer trenutno radimo u kućnom direktoriju. Također, možemo koristiti ~/Documents umjesto da cijelu putanju spominjemo kao/home/tin/Documents.

Lokalno kopirajte više datoteka

Ako želite kopirati više datoteka odjednom s jednog mjesta na drugo unutar vašeg sustava, to možete učiniti upisivanjem rsync slijedi naziv izvornih datoteka i odredišni direktorij.

Na primjer, za kopiranje datoteka file2.txt i file3.txt iz početnog direktorija u direktorij ~/Documents naredba bi bila:

$rsync/Dom/vjerujte/file2.txt/Dom/vjerujte/file3.txt/Dom/vjerujte/Dokumenti

Da biste kopirali sve datoteke s istim nastavkom, možete upotrijebiti simbol zvjezdice (*) umjesto da pojedinačno navedete nazive datoteka. Na primjer, za kopiranje svih datoteka iz početnog direktorija koji završava proširenjem .zip u direktorij ~/Documents koristit ćemo:

$rsync/Dom/vjerujte/ *.zip ~/Dokumenti

Lokalno kopirajte direktorije

Ako želite kopirati direktorij s poddirektorijem i svim sadržajem s jednog mjesta na drugo unutar vašeg sustava, to možete učiniti tako da upišete rsync nakon čega slijedi izvorni i odredišni direktorij.

Na primjer, za kopiranje uzorka direktorija u test/ direktorij unutar početnog direktorija, naredba bi bila:

$rsync-od /Dom/vjerujte/uzorak/Dom/vjerujte/test

Napomena: Navođenje / nakon izvornog imenika kopira samo sadržaj direktorija. Ako ne navedemo /nakon izvornog direktorija, izvorni će se direktorij također kopirati u odredišni direktorij.

Kao i u sljedećem izlazu, možete vidjeti da je naš izvorni uzorak direktorija također kopiran u odredišni direktorij (jer smo koristili uzorak umjesto uzorka/ kao izvorni direktorij).

Rsync podržava inkrementalni prijenos kao što možete vidjeti u gornjem izlazu da prenosi samo nove ili ažurirane datoteke.

Kopirajte datoteke na temelju maksimalne veličine

Tijekom kopiranja možemo odrediti i najveću veličinu datoteka koje se mogu kopirati s opcijom –max-size. Na primjer, za kopiranje datoteka ne većih od 2000k iz ~/Downloads u ~/Documents direktorij, naredba bi bila:

$rsync-do -max-veličina= 2000 tisuća kuna/Dom/vjerujte/Preuzimanja/ * /Dom/vjerujte/Dokumenti

Ova naredba će kopirati sve datoteke iz ~/Downloads u ~/Documents direktorij, osim onih većih od 2000k.

Kopirajte datoteke na temelju minimalne veličine

Slično, također možemo odrediti minimalnu veličinu datoteka koje se mogu kopirati s opcijom –min-size. Na primjer, za kopiranje datoteka ne manjih od 5 M iz ~/Downloads u ~/Documents direktorij, naredba bi bila:

$rsync-do -min= 5M/Dom/vjerujte/Preuzimanja/ /Dom/vjerujte/Dokumenti

Ova naredba kopira sve datoteke iz ~/Downloads u direktorij ~/Documents osim onih manjih od 5M.

Izuzmi datoteke

Tijekom kopiranja datoteka iz jednog direktorija u drugi, neke datoteke možete isključiti pomoću opcije —exclude koju slijedi naziv datoteke ili proširenje vrste datoteke.

Na primjer, za isključivanje svih .zip datoteka tijekom kopiranja datoteka iz ~/Downloads u ~/Documents direktorij, naredba bi bila:

$rsync-do --isključiti='*.zip' /Dom/vjerujte/Preuzimanja/ /Dom/vjerujte/Dokumenti

Kopirajte datoteke i direktorije na daljinu

Pomoću programa Rsync možete kopirati jednu datoteku, više datoteka i direktorije na udaljeni sustav. Za daljinsko kopiranje datoteka i direktorija trebat će vam:

  • Rsync instaliran na lokalnom i udaljenom sustavu
  • SSH pristup udaljenom sustavu
  • Lozinka za udaljenog korisnika

Prije kopiranja datoteka pomoću rsynca, provjerite možete li pristupiti udaljenom sustavu putem SSH -a:

$sshremote_user@remote_ip


Opća sintaksa za kopiranje datoteka i direktorija na udaljeni sustav pomoću rsync:

$rsync[opcija] [izvor] [daljinskikorisnik@remoteip: odredište]

Na primjer, za kopiranje jedne datoteke file.txt iz ~/Downloads u udaljeni sustav ~/Documents direktorij naredba bi bila:

$rsync-v~/Preuzimanja/file1.txt umara@192.168.72.164:~/Dokumenti

Slično, za kopiranje direktorija ~/Downloads/files u lokalnom sustavu s poddirektorijem i svim sadržajem u direktorij ~/Downloads/uzorci na udaljenom sustavu:

$rsync-rv~/Preuzimanja/datoteke umra@192.168.72.164:~/Preuzimanja/uzorci

Također možete kopirati datoteke i direktorije s udaljenog računala na vaš lokalni stroj. Na primjer, za kopiranje datoteke2.txt s udaljenog sustava na radnu površinu lokalnog sustava:

$rsync-vumara@192.168.72.164:~/Preuzimanja/file2.txt ~/Desktop/

Slično, za kopiranje imenika s udaljenog sustava na lokalni sustav

$rsync-rvumara@192.168.72.164:~/Preuzimanja/uzorak ~/Desktop/test

Također možete koristiti sve opcije poput -max-size, -min-size, -exclude i druge tijekom kopiranja datoteka u/s udaljenog sustava.

Rsync je izvrstan alat za lokalno ili daljinsko kopiranje datoteka s izvora na odredište. Uključuje veliki skup opcija koje vam daju fleksibilnost i kontrolu tijekom prijenosa datoteka na/s udaljenog sustava.