Terminal Tuts

20 najboljših primerov Rsync v Linuxu

20 najboljših primerov Rsync v Linuxu

Ukaz Rsync (oddaljena sinhronizacija) je pripomoček Linux / Unix, ki se uporablja za lokalno ali oddaljeno sinhronizacijo in kopiranje datotek in imenikov. Večina giksov Linux uporablja Rsync za zrcaljenje, varnostno kopiranje ali selitev podatkov med mapami, diski in omrežji. Pomembna lastnost ukaza Rsync je, da uporablja algoritem za delta prenos."

Delta Transfer algoritem deluje tako, da ciljni imenik posodobi z vsebino izvornega cilja. Če je v izvornem imeniku ustvarjena sprememba ali nova datoteka, bo med izvajanjem ukaza Rsync v ciljni imenik kopirana le določena sprememba. Za sinhronizacijo datotek in imenikov med lokalnim in oddaljenim računalnikom Rsync uporablja SSH.

Namestitev Rsync v Linux

Ukaz Rsync je vnaprej nameščen v večini operacijskih sistemov Linux. Vendar to morda ne velja za nekatere minimalne namestitve. Rsync lahko namestite tako, da v terminalu zaženete spodnje ukaze.

Na CentOS & RHEL

yum namestite rsync -y

V Ubuntuju in drugih distribucijah Debiana

sudo apt namestite rsync -y

Rsync Basic sintaksa

rsync možnosti izvorni cilj

Nekatere standardne možnosti / parametri, ki se uporabljajo z ukazom Rsync:

-v: -verbose Podroben izhod
-r: rekurzivno kopira podatke
-z: stisni podatke o datoteki
-h: daje izhod v človeško berljivi obliki
-a: arhiviranje datotek in imenika med sinhronizacijo
-progress Prikazuje napredek trenutno izvajanih nalog Rsync.

Vse možnosti, ki so na voljo za ukaz Rsync, si lahko ogledate z možnostjo “-help”.

$ rsync --help

Ukaz za pomoč Rsync

20 najboljših primerov Rsync v Linuxu

S temi podrobnimi informacijami v mislih začnimo z 20 koristnimi primeri ukazov Rsync, ki jih lahko uporabljate v sistemih Linux. Naš izbrani operacijski sistem je Ubuntu 20.04 LTS; vendar bi morala sintaksa delovati tudi za druge distribucije Linuxa z nameščenim Rsync.

1. Kopiraj / sinhroniziraj datoteke lokalno z možnostjo -v (podrobno)

To je najosnovnejši ukaz Rsync, tudi za novince. V tem primeru bomo kopirali datoteke medIzvirnik'imenik na namizju do'Rezerva'imenik v' / etc.mapa. Vključili bomo možnost -v (Podrobno), da bo rsync lahko posredoval informacije o dogajanju.

rsync -v izvirnik /

ukaz rsync -v (podroben)

Pri Rsync je treba opozoriti na to, da če ciljni imenik ne obstaja, ga bo samodejno ustvaril. Oglejmo si spodnji primer, kjer želimo kopirati datoteke v imenik “Foss”, Ki ne obstaja.

Ustvarite imenik z Rsync

2. Rekurzivno sinhronizirajte / kopirajte datoteke in imenike z možnostjo -r

V zgornjem ukazu, če je bil v ''Izvirnik'map, bi bilo preskočeno. To je prikazano na spodnji sliki.

Osnovni ukaz Rsync

Če želite to premagati, uporabite možnost -r (rekurzivno).

Rekurzivno sinhronizirajte datoteke z -r

3. Sinhronizirajte / kopirajte datoteke med lokalno in oddaljeno napravo

Pred izvajanjem te naloge morate vedeti več parametrov o oddaljenem strežniku / računalniku: naslov IP, uporabniško ime in uporabniško geslo.

Osnovna sintaksa, ki jo bomo uporabili, je:

rsync [možnosti] [datoteke] [uporabniško ime na daljavo] @ [naslov ip]: / [cilj]

Kopirajmo datoteke iz naše 'Izvirnik'na namizju do oddaljenega strežnika.

Daljinsko sinhroniziranje / kopiranje datotek z Rsync

4. Sinhronizirajte / kopirajte datoteke in imenike z oddaljenega strežnika v lokalni računalnik

Tako kot prejšnji ukaz bomo morali poznati tudi naslov IP oddaljenega strežnika. V tem primeru bomo sinhronizirali datoteke v 'Rezervav domačem imeniku strežnika do našega lokalnega računalnika.

rsync -rv tuts @ 192.168.1.64: / home / tuts / Backup / home / tuts / Desktop / Original

Sinhronizirajte kopiranje datoteke z oddaljenega strežnika na lokalni računalnik

5. Uporabite Rsync over SSH z možnostjo -e

Za zagotovitev varnosti datotek in map bomo uporabili protokol Rsync over Secure Shell (SSH). Poleg tega bo SSH pri zagotavljanju korenskega / uporabniškega gesla zagotavljal storitve šifriranja in zagotavljal njihovo varnost.

Za uporabo SSH bomo dodali možnost -e, ki določa protokol, ki ga želimo uporabiti.

 rsync -vre ssh Original / * tuts @ 192.168.1.64: / domov / tuts

Uporabite Rsync prek SSH

6. Pokažite napredek z ukazom Rsync

V primerih, ko kopirate več datotek ali ogromno datoteko, bi vedeli, da bi bil napredek učinkovit. Na srečo ima rsync to možnost --napredekmožnost.

sudo rsync -rv --progress Original / * / etc / Foss

Pokažite napredek z Rsync

7. Uporabite Rsync z možnostjo '-include'

V nekaterih primerih želite sinhronizirati samo določene datoteke. Z ukazom Rsync povzročite-vključujejo'možnost za izvedbo naloge. V tem primeru bomo sinhronizirali samo datoteke, ki se začnejo s črko 'I'.

sudo rsync -vr - vključi 'I *' Original / / etc / Backup /

Uporabite možnost -include z Rsync

8. Za prezrtje določenih datotek uporabite možnost Rsync z možnostjo -exclude

Z Rsync '-izključi', lahko izključite datoteke, ki jih ne želite sinhronizirati / kopirati. V tem primeru želimo prezreti vse datoteke, ki se začnejo s črko 'I'.

sudo rsync -vr --exclude 'I *' Original / / etc / Backup /

Uporabite Rsync z možnostjo '-exclude'

Lahko pa uporabite obe možnosti v enem ukazu. Glej spodnji primer.

sudo rsync -vr --exclude '*' --include 'I *' Original / / etc / Backup /

Izključujemo vse datoteke, razen tistih, ki se začnejo s črko "I."

Uporabite možnosti -include in -exclude

9. Uporabite Rsync z ukazom -delete

V nekaterih primerih so datoteke v ciljnem imeniku, ne pa tudi v izvorni mapi. Za sinhronizacijo bi bilo najbolje, da take datoteke najprej odstranite iz ciljnega imenika. Na srečo Rsync prihaja z-izbriši', ki to naredi samodejno.

Če je datoteka prisotna v ciljnem imeniku, v viru pa je ni, jo bo izbrisala.

rsync -vr --delete / etc / Backup / tuts @ 192.168.1.64: / home / tuts / Varnostno kopiranje

Uporabite Rsync z možnostjo brisanja

10. Z Rsync nastavite največjo velikost datotek za prenos

Če vas skrbi prostor za shranjevanje ali pasovna širina za oddaljeno sinhronizacijo datotek, morate z ukazom Rsync uporabiti možnost '-max-size'. Ta možnost vam omogoča, da nastavite največjo velikost datoteke, ki jo je mogoče kopirati.

Na primer, '-največja velikost = 100k'bo prenašal samo podatke, ki so enaki ali manjši od 100 kilobajtov.

rsync -vr --max-size = '200k' / etc / Backup / tuts @ 192.168.1.64: / home / tuts / Varnostno kopiranje

Z ukazom Rsync nastavite največjo velikost

11. Po uspešnem prenosu samodejno izbrišite izvorne datoteke

V primeru, da imate v računalniku oddaljeni varnostni strežnik in varnostni imenik. Podatke varnostno kopirate v mapo za varnostno kopijo v računalniku, preden jih sinhronizirate s strežnikom za varnostno kopiranje. Po vsaki sinhronizaciji boste morali izbrisati podatke v imeniku varnostnih kopij.

Na srečo lahko to storite samodejno z--remove-source-filesmožnost.

Po uspešnem prenosu izbrišite izvorne datoteke

Z zagonom ukaza 'ls' v izvorni mapi potrdimo, da so bile datoteke resnično izbrisane.

12. Z Rsync izvedite suh tek

Za začetnike, ki z ukazom Rsync niso prepričani, lahko zmešate vsebino ciljnega imenika, razveljavitev pa je lahko tako dolgočasno. Z-suhi tek'ukaz Rsync vam bo dal rezultat, kaj bo izvedeno, vendar tega ne bo storil.

Zato si lahko ta izhod ogledate, če je tisto, kar pričakujete, preden začnete o odstraniti '-suhi tekmožnost.

rsync -vr --dry-run Original / * tuts @ 192.168.1.64: / home / tuts / Varnostno kopiranje

Izvedite suh tek z Rsync

13. Nastavite omejitev pasovne širine za prenos datotek.

Če uporabljate omrežje v skupni rabi ali uporabljate več programov, ki potrebujejo internetno povezavo, bi bilo učinkovito določiti omejitev pasovne širine za oddaljeno sinhronizacijo / kopiranje datotek. To lahko storimo z Rsync '-bwlimitmožnost.

Ta stopnja se izračuna v kilobajtih. Torej, ko "-bwlimit = 1000'pomeni, da je na sekundo mogoče prenesti le 1000Kb.

rsync -vr --bwlimit = 1000 Original / * tuts @ 192.168.1.64: / home / tuts / Varnostno kopiranje

Nastavite omejitev pasovne širine, potrebne za prenos datotek

14. Sinhronizirajte celotne datoteke z Rsync

Privzeto Rsync sinhronizira samo spremenjene bloke in bajte. Torej, če ste besedilno datoteko sinhronizirali že prej in ste pozneje med sinhronizacijo dodali nekaj besedil v izvorno datoteko, bo kopirano samo vstavljeno besedilo. Če želite znova sinhronizirati celotno datoteko, boste morali uporabiti možnost '-W'.

rsync -vrW Original / * tuts @ 192.168.1.64: / home / tuts / Varnostno kopiranje

Sinhronizirajte celotno datoteko z Rsync

15. Ne sinhronizirajte / kopirajte spremenjenih datotek v ciljnem imeniku

V nekaterih primerih ste spremenili datoteke, ki so v ciljni mapi. Če zaženete ukaz Rsync, bodo spremembe v izvorni datoteki prepisane. Da bi se temu izognili, uporabite možnost '-u'.

rsync -vu Original / * tuts @ 192.168.1.64: / home / tuts / Varnostno kopiranje

Z možnostjo 'u' se izognete spreminjanju datotek v ciljni mapi

16. Z možnostjo Rsync z -i si oglejte razliko v datotekah med izvorom in ciljem

Če želite vedeti, kakšne nove spremembe bodo izvedene v ciljnem imeniku, uporabite možnost '-i', ki bo prikazala razliko v datotekah med izvornim in ciljnim imenikom.

rsync -avzi Original / Varnostno kopiranje /

Za ogled razlike v datotekah uporabite možnost -i

Oblikujte izhod na zgornji sliki in videli bomo datoteko z imenom 'zdravo.py ' ni v ciljnem imeniku. Oglejmo si nekaj teh parametrov.

d: prikazuje spremembo v ciljni datoteki
f: predstavlja datoteko
t: prikazuje spremembo časovnih žigov
s: označuje spremembo velikosti datoteke

17. Za kopiranje strukture imenika uporabite Rsync

Rsync lahko uporabite za sinhronizacijo samo strukture imenika, če vas datoteke ne zanimajo. Pred izvornim imenikom bomo morali uporabiti parametre -f ”+ * /” -f ”- *”.

rsync -av -f "+ * /" -f "- *" / home / tuts / Desktop / Original / / home / tuts / Documents /

Uporabite Rsync za kopiranje strukture imenika

18. Dodajte datumski žig v imeniško ime

Če želite slediti, kdaj so potekali prenosi, ne da bi pri tem odprli lastnosti imenika, lahko imenu imena enostavno dodate datum. To bo dodalo datumski žig vsem sinhronizacijam, ki jih opravite z Rsync.

Za to bomo dodali $ (datum + \\% Y - \\% m - \\% d) v ciljni imenik.

sudo rsync -rv Original / / etc / $ (datum + \\% Y - \\% m - \\% d)

V imenik dodajte datumski žig

19. Kopirajte eno datoteko lokalno

Če želite sinhronizirati / kopirati eno datoteko z Rsync, morate določiti pot do datoteke, ki ji sledi pot do ciljnega imenika.

rsync -v Original / heloo.py varnostno kopiranje /

Lokalno sinhronizirajte eno datoteko

20. Kopiranje več datotek na daljavo

Če želite hkrati kopirati več datotek, boste morali navesti pot do vseh. Ta metoda je učinkovita le za majhno število datotek.

rsync -vr / home / tuts / Desktop / Original / heloo.py / home / tuts / Desktop / Backup / index.html tuts @ 192.168.1.64: / home / tuts / Varnostno kopiranje

Kopirajte več datotek hkrati

To je vse o prvih 20 uporabnih primerih Rsync, ki vam bodo omogočili lokalno in oddaljeno sinhronizacijo datotek in imenikov. Pustite svoje povratne informacije in komentarje spodaj.

5 najboljših arkadnih iger za Linux
Dandanes so računalniki resni stroji, ki se uporabljajo za igre na srečo. Če ne boste mogli dobiti novega visokega rezultata, boste vedeli, kaj mislim...
Bitka za Wesnoth 1.13.6 Razvoj izdan
Bitka za Wesnoth 1.13.6, ki je izšel prejšnji mesec, je šesta razvojna izdaja v 1.13.x series in prinaša številne izboljšave, predvsem uporabniški vme...
Kako namestiti League Of Legends na Ubuntu 14.04
Če ste ljubitelj League of Legends, je to priložnost, da preizkusite League of Legends. Upoštevajte, da LOL podpira PlayOnLinux, če uporabljate Linux....