Rsynci (kaugsünkroonimine) käsk on Linuxi / Unixi utiliit, mida kasutatakse failide ja kataloogide sünkroonimiseks ja kopeerimiseks kas lokaalselt või eemalt. Enamik Linuxi geeke kasutavad Rsynci andmete peegeldamiseks, varundamiseks või migreerimiseks kaustade, ketaste ja võrkude vahel. Rsynci käsu üks tähelepanuväärne omadus on see, et see kasutab „delta edastusalgoritmi.”
Delta Transfer algoritm töötab, värskendades sihtkataloogi lähtekoha sisuga. Kui lähtekataloogis luuakse muudatus või uus fail, kopeeritakse käsu Rsync käivitamisel sihtkataloogi ainult konkreetne muudatus. Failide ja kataloogide sünkroonimiseks kohaliku ja kaugarvuti vahel kasutab Rsync SSH-d.
Rsynci installimine Linuxi
Rsynci käsk on eelinstallitud enamikus Linuxi operatsioonisüsteemides. Mõne minimaalse installatsiooni puhul ei pruugi see siiski nii olla. Rsynci saate installida, käivitades terminalis järgmised käsud.
CentOS & RHEL
yum installige rsync -y
Ubuntu ja muude Debiani distributsioonide kohta
sudo apt install rsync -y
Rsync Põhisüntaks
rsynci suvandite allika sihtkoht
Mõned standardvalikud / parameetrid, mida kasutatakse käsuga Rsync:
-v: -verbose Verbose väljund
-r: kopeerib andmeid rekursiivselt
-z: faili andmete tihendamine
-h: annab väljundi inimloetavas vormingus
-a: arhiivige sünkroonimise ajal failid ja kataloog
-progress Näitab praegu töötavate Rsynci ülesannete edenemist.
Kõiki Rsynci käsu jaoks saadaolevaid suvandeid näete, kasutades suvandit -help.
$ rsync --help
20 parimat Linuxi Rsynci näidet
Pidades seda üksikasjalikku teavet silmas pidades, alustame 20 kasuliku Rsynci näitekäsuga, mida saate kasutada Linuxi süsteemides. Meie valitud operatsioonisüsteem on Ubuntu 20.04 LTS; süntaks peaks töötama aga ka teiste Linuxi distributsioonide puhul, kuhu on installitud Rsync.
1. Failide kopeerimine / sünkroonimine lokaalselt, kasutades valikut -v (paljusõnaline)
See on kõige algsem Rsynci käsk isegi algaja jaoks. Selles näites kopeerime failid 'Originaal'töölaual asuvasse kataloogi'Varundamine'kataloogis' / etc.'kaust. Lisame valiku -v (Verbose), et rsync saaks teavet toimuva kohta.
rsync -v Original /
Üks asi, mida Rsynciga tähele panna, on see, et kui sihtkataloogi pole, loob see selle automaatselt. Vaatame allpool toodud näidet, kus soovime failid kataloogi kopeerida “Foss”Mida pole olemas.
2. Failide ja kataloogide sünkroonimine / kopeerimine rekursiivselt suvandiga -r
Kui ülaltoodud käsus oli kataloogis 'Originaal'kaust, see jäetakse vahele. Seda illustreerib allolev pilt.
Selle ületamiseks kasutage valikut -r (rekursiivne).
3. Failide sünkroonimine / kopeerimine kohaliku masina ja kaugarvuti vahel
Enne selle ülesande täitmist peate kaugserveri / masina kohta teadma mitmeid parameetreid: IP-aadress, kasutajanimi ja kasutaja parool.
Põhiline süntaks, mida kasutame, on:
rsync [valikud] [failid] [kaugkasutajanimi] @ [ip-aadress]: / [sihtkoht]
Kopeerime failid meieOriginaal'serveris asuvat kataloogi serverisse.
4. Failide ja kataloogide sünkroonimine / kopeerimine kaugserverist kohalikku arvutisse
Nii nagu eelmine käsk, peame teadma kaugserveri IP-aadressi. Selles näites sünkroonime failid jaotisesVarundamine'kaust serveri kodukataloogis meie kohalikku arvutisse.
rsync -rv tuts @ 192.168.1.64: / home / tuts / Backup / home / tuts / Desktop / Original
5. Kasutage Rsync SSH-i kaudu suvandiga -e
Failide ja kaustade turvalisuse tagamiseks kasutame Rsync over Secure Shell Protocol (SSH). Lisaks pakub juur- / kasutajaparooli pakkumisel SSH krüptimisteenuseid, tagades nende turvalisuse.
SSH kasutamiseks lisame valiku -e, mis määrab protokolli, mida soovime kasutada.
rsync -vre ssh Original / * tuts @ 192.168.1.64: / home / tuts
6. Kuva edusamm käsk Rsync
Olukordades, kus kopeerite mitu või suurt faili, oleks edusammude teadmine tõhus. Õnneks on rsyncil see valik olemas --edusammud'variant.
sudo rsync -rv --progress Original / * / etc / Foss
7. Kasutage Rsynci koos suvandiga '-include'
On olukordi, kus soovite sünkroonida ainult teatud faile. Rsynci käsuga põhjustate '-hõlmama'ülesande täitmise võimalus. Selles näites sünkroonime failid, mis algavad tähega 'I'.
sudo rsync -vr - lisage 'I *' Original / / etc / Backup /
8. Konkreetsete failide eiramiseks kasutage valikut Rsync '-välista'
Rsynciga-välistada', saate välistada failid, mida te ei soovi sünkroonida / kopeerida. Selles näites soovime eirata kõiki tähega „I” algavaid faile.
sudo rsync -vr - välista 'I *' Original / / etc / Backup /
Teise võimalusena võite ühes käsus kasutada mõlemat valikut. Vaadake allpool toodud näidet.
sudo rsync -vr - välista '*' - kaasata 'I *' Original / / etc / Backup /
Me välistame kõik failid, välja arvatud need, mis algavad tähega „I”."
9. Kasutage käsku Rsync with -delete
On olukordi, kus sihtkataloogis on faile, kuid mitte lähtekaustas. Sünkroonimiseks oleks kõige parem sellised failid esmalt sihtkataloogist eemaldada. Õnneks on Rsync kaasas-kustuta', mis teeb seda automaatselt.
Kui sihtkataloogis on fail, kuid allikas puudub, siis see kustutab.
rsync -vr --delete / etc / Backup / tuts @ 192.168.1.64: / home / tuts / Varundamine
10. Määrake Rsynciga edastatavate failide maksimaalne suurus
Kui teil on probleeme failide kaugsünkroonimiseks salvestusruumi või ribalaiusega, peate käsuga Rsync kasutama valikut "-max-size". See valik võimaldab teil määrata faili maksimaalse suuruse, mida saab kopeerida.
Näiteks a '-max-suurus = 100k'edastab ainult andmeid, mis on võrdsed või väiksemad kui 100 kilobaiti.
rsync -vr --max-size = '200k' / etc / Backup / tuts @ 192.168.1.64: / home / tuts / Varundamine
11. Pärast edukat ülekandmist kustutage lähtefailid automaatselt
Võtke olukord, kus teie arvutis on kaugvarundusserver ja varukataloog. Enne varundusserveriga sünkroonimist varundate andmed oma arvuti varukoopiate kausta. Pärast iga sünkroonimist peate varukataloogis olevad andmed kustutama.
Õnneks saate seda teha automaatselt--remove-source-files'variant.
Käivitades lähtekaustas käsu 'ls, kinnitame, et tõepoolest failid kustutati.
12. Tehke Rsynciga kuivkäik
Algajate jaoks, kes pole Rsynci käsuga kindlad, võite oma sihtkataloogi sisu sassi ajada ja tagasivõtmine võib olla sama tüütu. Koos '-kuivkäiv', annab käsk Rsync teile väljundi selle kohta, mida tehakse, kuid ta ei tee seda.
Seetõttu võite vaadata seda väljundit, kui ootate seda enne, kui-kuivkäiv'variant.
rsync -vr --dry-run Original / * tuts @ 192.168.1.64: / home / tuts / Varundamine
13. Määra failide edastamiseks vajalik ribalaiuse piir.
Kui olete ühiskasutatavas võrgus või kasutate mitut Interneti-ühendust vajavat programmi, oleks tõhus seada ribalaiuse piirang, mis on vajalik failide kaugsünkroonimiseks / kopeerimiseks. Me saame seda teha Rsynciga-bwlimit'variant.
See määr arvutatakse kilobaitides. Seega, kui-bwlimit = 1000"tähendab, et sekundis saab edastada ainult 1000 KB.
rsync -vr --bwlimit = 1000 Algne / * tuts @ 192.168.1.64: / home / tuts / Varundamine
14. Sünkroonige Rsynciga kõik failid
Vaikimisi sünkroonib Rsync ainult muudetud plokid ja baidid. Seega, kui olete varem sünkrooninud tekstifaili ja hiljem sünkroonimisel lisanud mõned tekstid lähtefaili, kopeeritakse ainult sisestatud tekst. Kui soovite kogu faili uuesti sünkroonida, peate kasutama valikut "-W".
rsync -vrW Original / * tuts @ 192.168.1.64: / home / tuts / Varundamine
15. Ärge sünkroonige / kopeerige muudetud faile sihtkataloogis
On olukordi, kus olete sihtkaustas olevaid faile muutnud. Kui käivitate käsu Rsync, kirjutavad need muudatused üle lähtefailis olevad. Selle vältimiseks kasutage valikut '-u'.
rsync -vu Original / * tuts @ 192.168.1.64: / home / tuts / Varundamine
16. Allika ja sihtkoha failide erinevuse vaatamiseks kasutage valikut Rsync with -i
Kui soovite teada saada, milliseid uusi muudatusi sihtkataloogis tehakse, kasutage valikut '-i', mis näitab lähte- ja sihtkataloogi erinevust failides.
rsync -avzi Original / Backup /
Vormige ülaltoodud pildi väljund ja näeme faili nimega "heloo.py ' pole sihtkoha kataloogis. Vaatame mõnda neist parameetritest.
d: näitab muudatust sihtfailis
f: tähistab faili
t: näitab ajatemplite muutust
s: näitab faili suuruse muutust
17. Kasutage Rsynci ainult kataloogistruktuuri kopeerimiseks
Kui failid ei huvita, saate Rsynci abil sünkroonida ainult kataloogistruktuuri. Enne lähtekataloogi peame kasutama parameetreid -f ”+ * /” -f ”- *”.
rsync -av -f "+ * /" -f "- *" / kodu / tuts / Töölaud / Originaal / / kodu / tuts / Dokumendid /
18. Kuupäeva tempel lisamine kataloogi nimele
Kui soovite jälgida, millal ülekanded toimusid kataloogi atribuute avamata, saate kataloogi nimele hõlpsalt lisada kuupäeva. See lisab kuupäeva templi kõigile sünkroonimistele, mida teete Rsynciga.
Selleks lisame $ (kuupäev + \\% Y - \\% m - \\% d) sihtkataloogi.
sudo rsync -rv Original / / etc / $ (kuupäev + \\% Y - \\% m - \\% d)
19. Kopeerige üks fail kohapeal
Üksiku faili sünkroonimiseks / kopeerimiseks Rsynciga peate määrama faili tee, millele järgneb sihtkoha kataloogi tee.
rsync -v Original / heloo.py varundamine /
20. Mitme faili kaugkopeerimine
Mitme faili üheaegseks kopeerimiseks peate esitama tee kõigile neile. See meetod on efektiivne ainult väheste failide jaoks.
rsync -vr / home / tuts / Töölaud / Originaal / heloo.py / home / tuts / Töölaud / Varundamine / register.HTML tuts @ 192.168.1.64: / home / tuts / Varundamine
See kõik on umbes 20 kõige kasulikumat Rsynci näidet, mis võimaldavad teil faile ja katalooge sünkroonida nii lokaalselt kui ka kaugelt. Jätke julgelt oma tagasiside ja kommentaarid allpool.