Rsync (Vzdialená synchronizácia) je najčastejšie používaný príkaz pre kopírovanie a synchronizácia súbory a adresáre na diaľku ako aj lokálne v Linux/Unix systémy. S pomocou rsync príkaz môžete kopírovať a synchronizovať údaje na diaľku a lokálne medzi adresármi, cez disky a siete, vykonávať zálohovanie údajov a zrkadlenie medzi dvoma počítačmi so systémom Linux.
Tento článok vysvetľuje 10 základné a pokročilé používanie rsync príkaz na vzdialený a lokálny prenos súborov v Linux stroje na báze. Nemusíš byť koreň používateľ spustiť rsync príkaz.
# rsync cieľový zdroj
Môžeme nainštalovať rsync balík pomocou nasledujúceho príkazu.
# yum install rsync (On červený klobúkzaložené systémy) # apt-get install rsync (ZapnutéDebian založené systémy)
Nasledujúci príkaz synchronizuje jeden súbor na lokálnom počítači z jedného umiestnenia do druhého. V tomto prípade názov súboru backup.tar je potrebné skopírovať alebo synchronizovať s /tmp/backups/ priečinok.
[[chránené e -mailom]]# rsync -zvh backup.tar/tmp/backups/created directory/tmp/backups backup.tar sent 14,71M bytes prijatých 31 bytes 3,27M bytes/sec total size is 16,18M speedup is 1,10
Vo vyššie uvedenom príklade vidíte, že ak cieľ už neexistuje, rsync automaticky vytvorí adresár pre cieľ.
Nasledujúci príkaz prenesie alebo synchronizuje všetky súbory z jedného adresára do iného adresára na tom istom počítači. V tomto prípade /root/rpmpkgs obsahuje niekoľko súborov balíka rpm a chcete, aby sa tento priečinok skopíroval dovnútra /tmp/backups/ priečinok.
[[chránené e -mailom]]# rsync -avzh/root/rpmpkgs/tmp/backups/odosielanie prírastkového zoznamu súborov rpmpkgs/rpmpkgs/httpd-2.2.3-82.el5.centos.i386.rpm rpmpkgs/mod_ssl-2.2.3-82.el5.centos.i386.rpm rpmpkgs/nagios-3.5.0.tar.gz rpmpkgs/nagios-plugins-1.4.16.tar.gz odoslané 4,99 M bajtov prijatých 92 bajtov 3,33 M bajtov/s celková veľkosť je 4,99 M, zrýchlenie je 1,00
Tento príkaz synchronizuje adresár z lokálneho počítača na vzdialený počítač. Napríklad: Na vašom lokálnom počítači je priečinok „rpmpkgs“, Ktorý niektoré obsahuje Ot./min balíky a chcete, aby sa obsah miestneho adresára odosielal na vzdialený server, môžete použiť nasledujúci príkaz.
[[chránené e -mailom]] $ rsync -avz rpmpkgs/ [chránené e -mailom]:/Domov/ [chránené e -mailom]heslo: odosielanie prírastkového zoznamu súborov ./ httpd-2.2.3-82.el5.centos.i386.rpm mod_ssl-2.2.3-82.el5.centos.i386.rpm nagios-3.5.0.tar.gz nagios-plugins-1.4.16.tar.gz odoslané 4993369 bajtov prijatých 91 bajtov 399476,80 bajtov/s celková veľkosť je 4991313 zrýchlenie je 1,00
Tento príkaz vám pomôže synchronizovať vzdialený adresár s lokálnym adresárom. V tomto prípade adresár /home/tarunika/rpmpkgs ktorý je na vzdialenom serveri, sa kopíruje do vášho lokálneho počítača v /tmp/myrpms.
[[chránené e -mailom]]# rsync -avzh [chránené e -mailom]:/home/tarunika/rpmpkgs/tmp/myrpms [chránené e -mailom]heslo: príjem prírastkového zoznamu súborov vytvorený adresár/tmp/myrpms rpmpkgs/rpmpkgs/httpd-2.2.3-82.el5.centos.i386.rpm rpmpkgs/mod_ssl-2.2.3-82.el5.centos.i386.rpm rpmpkgs/nagios-3.5.0.tar.gz rpmpkgs/nagios-plugins-1.4.16.tar.gz odoslané 91 bajtov prijatých 4,99 mil. bajtov 322,16 kB bajtov/s celková veľkosť je 4,99 M, zrýchlenie je 1,00
S rsync môžeme použiť SSH (Secure Shell) na prenos údajov pomocou SSH protokolu pri prenose našich údajov si môžete byť istí, že vaše údaje sú prenášané zabezpečeným spôsobom pripojenie so šifrovaním, aby nikto nemohol čítať vaše údaje počas ich prenosu cez kábel na internet.
Tiež keď používame rsync, musíme poskytnúť používateľ/koreň heslo na splnenie tejto konkrétnej úlohy, takže pomocou SSH option bude odosielať vaše prihlasovacie údaje šifrovaným spôsobom tak, aby vaše heslo bude v bezpečí.
Ak chcete zadať protokol pomocou rsync musíš dať “-e”S názvom protokolu, ktorý chcete použiť. V tomto prípade použijeme „ssh“S„-e”A vykonajte prenos dát.
[[chránené e -mailom]]# rsync -avzhe ssh [chránené e -mailom]: /root/install.log/tmp/ [chránené e -mailom]heslo: príjem inkrementálneho zoznamu súborov install.log odoslaný 30 bajtov prijatých 8,12 kB bajtov 1,48 kB bajtov/s celková veľkosť je 30,74 kB zrýchlenie je 3,77
[[chránené e -mailom]]# rsync -avzhe ssh backup.tar [chránené e -mailom]:/zálohy/ [chránené e -mailom]heslo: odosielanie prírastkového zoznamu záloh. odoslané tar 14,71 milióna bajtov 31 bajtov 1,28 megabajtov/s celková veľkosť je 16,18 mil. zrýchlenie je 1,10.
Odporúčané čítanie:Na synchronizáciu nových alebo zmenených/upravených súborov v systéme Linux použite nástroj Rsync
Na zobrazenie postupu pri prenose údajov z jedného počítača na iný počítač môžeme použiť príkaz „- pokrok “ možnosť pre to. Zobrazuje súbory a čas, ktorý zostáva na dokončenie prenosu.
[[chránené e -mailom]]# rsync -avzhe ssh --progress /home /rpmpkgs [chránené e -mailom]:/root/rpmpkgs [chránené e -mailom]heslo: odosielanie inkrementálneho zoznamu súborov vytvorený adresár/root/rpmpkgs rpmpkgs/rpmpkgs/httpd-2.2.3-82.el5.centos.i386.rpm 1,02 M 100% 2,72 MB/s 0:00:00 (xfer#1, na kontrolu = 3/5) rpmpkgs/mod_ssl-2.2.3-82.el5.centos.i386.rpm 99,04 K 100% 241,19 kB/s 0:00:00 (xfer#2, na kontrolu = 2/5 ) rpmpkgs/nagios-3.5.0.tar.gz 1,79 M 100% 1,56 MB/s 0:00:01 (xfer#3, na kontrolu = 1/5) rpmpkgs/nagios-plugins-1.4.16.tar.gz 2,09 M 100% 1,47 MB/s 0:00:01 (xfer#4, na kontrolu = 0/5) odoslané 4,99 mil. prijaté bajty 92 bajtov 475,56 kB bajtov/s celková veľkosť je 4,99 mil zrýchlenie je 1,00
Tieto dve možnosti nám to umožňujú zahrnúť a vylúčiť súborov zadaním parametrov pomocou tejto možnosti nám pomôže tieto súbory alebo adresáre špecifikovať ktoré chcete zahrnúť do synchronizácie a vylúčiť súbory a priečinky, s ktorými nechcete byť prenesené.
V tomto prípade príkaz rsync bude zahŕňať iba tieto súbory a adresáre, ktoré začínajú na „R.“A vylúčte všetky ostatné súbory a adresáre.
[[chránené e -mailom]]# rsync -avze ssh --include 'R*' --exclude '*' [chránené e -mailom]:/var/lib/rpm//root/rpm [chránené e -mailom]'heslo: príjem inkrementálneho zoznamu súborov vytvorený adresár/root/ot.
Ak súbor alebo adresár neexistuje v zdroji, ale už existuje v cieľovom umiestnení, možno budete chcieť počas synchronizácie tento existujúci súbor/adresár v cieli odstrániť.
Môžeme použiť '–Odstrániť‘Možnosť odstrániť súbory, ktoré sa v zdrojovom adresári nenachádzajú.
Zdroj a cieľ sú synchronizované. Teraz sa vytvára nový súbor test.txt na cieľ.
[[chránené e -mailom]]# dotykový test.txt. [[chránené e -mailom]]# rsync -avz -vymazať [chránené e -mailom]:/var/lib/rpm/. Heslo: prijímanie zoznamu súborov... hotový. odstránenie súboru test.txt. ./ odoslaných 26 bajtov prijatých 390 bajtov 48,94 bajtov/s. celková veľkosť je 45305958, zrýchlenie je 108908,55
Target má nový súbor s názvom test.txt, pri synchronizácii so zdrojom pomocou „–Odstrániť‘, Odstránil súbor test.txt.
Môžete určiť Max veľkosť súboru na prenos alebo synchronizáciu. Môžete to urobiť pomocou „-maximálna veľkosť”Možnosť. V tomto prípade je maximálna veľkosť súboru 200 tis, takže tento príkaz prenesie iba tie súbory, ktoré sú rovnaké alebo menšie ako 200 tis.
[[chránené e -mailom]]# rsync -avzhe ssh --max -size = '200k'/var/lib/rpm/ [chránené e -mailom]:/root/tmprpm [chránené e -mailom]'heslo: odosielanie inkrementálneho zoznamu súborov vytvorený adresár/root/tmprpm ./ Konfliktná skupina Skupina Názov inštalátora Názov provideversion Pubkeys Vyžadovať verziu Sha1header Sigmd5 Triggername __db.001 odoslané 189,79 kB bajtov prijatých 224 bajtov 13,10 kB bajtov/s celková veľkosť je 38,08 M zrýchlenie je 200.43
Predpokladajme, že máte hlavný webový server a server na zálohovanie údajov, vytvorili ste denné zálohovanie a synchronizovali so svojim záložným serverom, teraz nechcete ponechať lokálnu kópiu zálohy na svojom webe server.
Budete teda čakať na dokončenie prenosu a potom tieto lokálne záložné súbory odstránite ručne? Samozrejme, že nie. Toto automatické vymazanie je možné vykonať pomocou príkazu „-odstrániť zdrojové súbory‘Možnosť.
[[chránené e -mailom]]# rsync --remove-source-files -zvh backup.tar/tmp/backups/backup.tar sent 14,71M bytes prijat 31 bytes 4,20M bytes/sec total size is 16,18M speedup is 1,10 [[chránené e -mailom]]# ll backup.tar ls: backup.tar: Žiadny taký súbor alebo adresár
Ak ste nováčik a používate rsync a neviete, čo presne váš príkaz urobí. Rsync môže skutočne zamotať veci vo vašom cieľovom priečinku a potom vrátiť späť môže byť únavná práca.
Odporúčané čítanie:Ako synchronizovať dva webové servery/webové stránky Apache pomocou Rsync
Použitím tejto možnosti sa nevykonajú žiadne zmeny, iba sa vykoná príkaz na sucho a zobrazí sa výstup príkazu. Ak výstup ukazuje presne to isté, čo chcete urobiť, môžete odstrániť „-suchý beh‘Z vášho príkazu a spustite na termináli.
[chránené e -mailom]]# rsync --dry-run --remove-source-files -zvh backup.tar/tmp/backups/backup.tar sent 35 bytes prijat 15 bytes 100,00 bytes/sec total size is 16.18M speedup is 323584.00 (DRY RUN)
Limit šírky pásma môžete nastaviť pri prenose údajov z jedného počítača na druhý pomocou:–Bwlimit‘Možnosť. Tieto možnosti nám pomáhajú obmedziť sa I/O šírka pásma.
[[chránené e -mailom]]# rsync --bwlimit = 100 -avzhe ssh/var/lib/rpm/ [chránené e -mailom]:/root/tmprpm/ [chránené e -mailom]'heslo: odosielanie prírastkového zoznamu súborov. odoslaných 324 bajtov prijatých 12 bajtov 61,09 bajtov/s. celková veľkosť je 38,08 m, zrýchlenie je 113347,05
V predvolenom nastavení rsync synchronizuje iba zmenené bloky a bajty, ak chcete explicitne synchronizovať celý súbor, použite príkaz „-W‘Možnosť s ním.
[[chránené e -mailom]]# rsync -zvhW backup.tar /tmp/backups/backup.tar. backup.tar. odoslaných 14,71 milióna bajtov prijatých 31 bytov 3,27 milióna bajtov/s. celková veľkosť je 16,18M, zrýchlenie je 1,10
To je teraz s rsync všetko, vidíte manuálové stránky pre ďalšie možnosti. Zostaňte v spojení s Tecmint pre ďalšie vzrušujúce a zaujímavé návody v budúcnosti. Nechajte svoje komentáre a Návrhy.