Kako koristiti naredbu rsync za kopiranje datoteka na Ubuntuu

How Use Rsync Command Copy Files Ubuntu



rsync je alat za kopiranje datoteka. rsync se koristi za kopiranje datoteka s vašeg računala na udaljeni stroj, s udaljenog stroja na vaše računalo, iz imenika u drugi direktorij na istom računalu, s vašeg računala na vanjski tvrdi disk ili mrežni udio itd. rsync također može biti koristi se za inkrementalne sigurnosne kopije.

U ovom članku pokazat ću vam kako koristiti naredbu rsync za kopiranje datoteka i direktorija te preuzimanje inkrementalnih sigurnosnih kopija. Za demonstraciju ću koristiti Ubuntu. No, svaka moderna Linux distribucija trebala bi raditi sasvim u redu. Dakle, krenimo.







Instaliranje rsync -a:

rsync bi već trebao biti instaliran na Ubuntu. No, ako iz nekog razloga nije instaliran na vašem računalu, možete ga jednostavno instalirati iz službenog spremišta paketa Ubuntu sa sljedećom naredbom:



$sudoprikladaninstaliratirsync-i



Format naredbe rsync:

Osnovni format naredbe rsync je,





$rsync opcijeizvorodredište
  • izvor može biti datoteka, direktorij ili mrežni put.
  • odredište može biti direktorij ili mrežni put.
  • rsync ima mnogo opcija. Pomoću ovih opcija možete promijeniti ponašanje rsync -a. Usput ćemo pogledati neke od najčešćih opcija.

Kada koristite rsync, morate znati sljedeće:

  • Ako stavite a / iza naziva direktorija u izvor rsync -a poput moji dokumenti/ , to znači da kopirate sve datoteke iz direktorija samo u odredište .
  • Ako ne stavite a / iza naziva direktorija u izvor rsync -a poput moji dokumenti , tada će rsync kopirati sve datoteke iz direktorija u odredište uključujući imenik.
  • Ako upišete a odredište putanju direktorija koja ne postoji, tada će je rsync automatski stvoriti prema potrebi.

Sigurnosno kopiranje lokalnih datoteka i direktorija pomoću rsync -a:

S datotekom možete vrlo brzo kopirati datoteke iz jednog u drugi direktorij na vašem računalu rsync .



Na primjer, recimo, imate neke važne datoteke u ~/Preuzimanja imenik. Sada želite sigurnosno kopirati sve datoteke iz ~/Preuzimanja direktorij na USB memorijski pogon /dev/sdb1 montiran u imenik / mnt / myusb .

Napravimo neke lažne datoteke u ~/Preuzimanja imenik.

$dodir~/Preuzimanja/test{1..100}

Sada kopirajte sve datoteke iz ~/Preuzimanja imenik u / mnt / myusb direktorij sa sljedećom naredbom rsync:

$rsync-avzh~/Preuzimanja/ /mnt/myusb

Datoteke treba kopirati.

Kao što vidite, datoteke se nalaze u / mnt / myusb imenik.

Također možete kopirati cijelu ~/Preuzimanja direktorij na USB pogon na sljedeći način:

$rsync-avzh~/Preuzimanja/mnt/myusb

Kao što vidite, cijeli direktorij se kopira na USB pogon.

Opet, ako želite kopirati sve datoteke iz ~/Preuzimanja imenik u drugi direktorij (recimo mydownloads/) na USB memorijskom pogonu pokrenite rsync na sljedeći način:

$rsync-avzh~/Preuzimanja/ /mnt/myusb/mydownloads

Kao što vidite, datoteke su ispravno kopirane na USB fleš disk.

Sigurnosno kopiranje udaljenih datoteka i direktorija pomoću rsync -a:

Pomoću rsync -a možete kopirati datoteke i direktorije s udaljenog poslužitelja na vaš lokalni datotečni sustav ili USB pogon za sigurnosne kopije. Također možete kopirati datoteke i direktorije iz vašeg lokalnog datotečnog sustava na udaljeni poslužitelj za sigurnosno kopiranje. rsync koristi SSH za kopiranje datoteka i direktorija na/s udaljenog poslužitelja.

Morate imati paket poslužitelja SSH ( openssh-poslužitelj na Ubuntu) i rsync paket instaliran na udaljenom poslužitelju ako želite koristiti rsync za sigurnosno kopiranje datoteka.

Na primjer, recimo, želite kopirati sav sadržaj (uključujući direktorij) datoteke /www direktorij s vašeg udaljenog poslužitelja www.primjer1.com na USB USB pogon postavljen na putu / mnt / myusb na vašem lokalnom datotečnom sustavu.

Da biste to učinili, možete koristiti sljedeću naredbu rsync:

$rsync-avzhkorijen@www.primjer1.com:/www/mnt/myusb

BILJEŠKA: Ovdje, korijen je udaljeno korisničko ime, www.primjer1.com je DNS naziv udaljenog poslužitelja i /www je put direktorija na udaljenom poslužitelju. Također možete koristiti IP adresu udaljenog poslužitelja umjesto DNS imena ako želite.

Možda ćete vidjeti sljedeću poruku ako se prvi put povezujete s udaljenim poslužiteljem. Samo upišite Da a zatim pritisnite .

Sada upišite lozinku za udaljenog korisnika (u mom slučaju to je to korijen ) i pritisnite .

Sve datoteke i direktoriji unutar /www imenik uključujući direktorij /www treba kopirati na USB memorijski pogon kao što možete vidjeti na slici ispod.

Također možete kopirati datoteke s lokalnog datotečnog sustava na udaljeni poslužitelj pomoću rsync.

U ranijem primjeru napravili ste sigurnosnu kopiju datoteke /www direktorij na udaljenom poslužitelju. Recimo, neke datoteke na udaljenom poslužitelju su oštećene i želite ih oporaviti iz sigurnosne kopije.

Da biste to učinili, pokrenite naredbu rsync na sljedeći način:

$rsync-avzh /mnt/myusb/www/korijen@www.primjer1.com:/www

Sada upišite lozinku vašeg udaljenog poslužitelja i pritisnite .

Datoteke treba kopirati iz vašeg lokalnog datotečnog sustava na udaljeni poslužitelj.

Inkrementalne sigurnosne kopije s rsync -om:

U ovoj vrsti sigurnosne kopije, izvor i odredište imenici se sinkroniziraju. Ako je bilo koja datoteka dodana u izvor imenik, dodaje se u odredište imenik također. Na isti način, ako postoji neka datoteka ili direktorij iz izvor direktorij je uklonjen, uklonjen je iz odredište imenik također.

rsync je izvrstan alat za izradu inkrementalnih sigurnosnih kopija.

Recimo, imate imenik ~/cloud u vašim korisnicima DOM imenik. Sada želite preuzeti inkrementalnu sigurnosnu kopiju direktorija na USB fleš disk postavljen na putanji / mnt / usb1 na udaljenom poslužitelju sigurnosna kopija.example.com .

BILJEŠKA: Moraš imati openssh-poslužitelj i rsync pakete instalirane na vašem udaljenom poslužitelju kako bi ovo funkcioniralo.

Da biste napravili inkrementalnu sigurnosnu kopiju ~/cloud , pokrenite sljedeću naredbu:

$rsync-avzh --izbrisati --napredak~/oblak/šovon@backup.example.com:/mnt/usb1/sigurnosna kopija

Sada upišite lozinku za udaljenog korisnika i pritisnite .

Sadržaj ~/cloud direktorij treba kopirati na USB pogon na udaljenom poslužitelju.

Kao što vidite, sve se datoteke kopiraju na USB memorijski pogon montiran na udaljenom poslužitelju sigurnosne kopije.

Sada, uklonimo datoteku iz lokalnog datotečnog sustava i vidimo što će se dogoditi.

$rm~/oblak/packages.txt

Sada upotrijebite rsync za sinkronizaciju direktorija s istom naredbom kao i prije.

$rsync-avzh --izbrisati --napredak~/oblak/šovon@backup.example.com:/mnt/usb1/sigurnosna kopija

Kao što vidite, datoteka packages.txt također se uklanja s USB pogona za palete koji je montiran na udaljenom poslužitelju sigurnosne kopije.

Kamo dalje:

Više informacija o rsync -u možete pronaći na man stranici rsync -a. Početna stranica rsync -a ima detaljan opis svih opcija rsync -a. Toplo vam preporučujem da to provjerite.

Man stranici rsync možete pristupiti sljedećom naredbom:

$čovjekrsync

Dakle, tako koristite rsync za kopiranje datoteka i stvaranje inkrementalnih sigurnosnih kopija na Ubuntuu. Hvala što ste pročitali ovaj članak.