Použití rsync k synchronizaci souborů
Účelem tohoto článku je poskytnout pochopení používání rsync
nástroj.
Rsync je zkratka pro „vzdálenou synchronizaci“ a je to účinný nástroj pro kopírování a synchronizaci souborů nebo adresářů lokálně nebo vzdáleně. Efektivity je dosaženo přesunem pouze těch částí souborů, které se změnily, namísto opětovného kopírování všeho.
Využití
Syntaxe
rsync
syntaxe je opravdu jednoduchá:
rsync [OPTIONS] SOURCE DESTINATION
Možnosti
Níže jsou uvedeny některé z nejužitečnějších možností, které lze přidat do rsync
příkaz:
-v
nebo--verbose
:podrobný příznak zobrazí informace o průběhu úlohy.-a
nebo--archive
:rovná se -rlptgoD. Příznak archivace nastavuje nejběžnější možnosti namísto jejich individuálního nastavení.
Níže jsou uvedeny možnosti nastavené pomocí -a
které lze také nastavit jeden po druhém:
-r
nebo--recursive
:vrací se do adresářů. Musí být použit, když potřebujete zkopírovat veškerý obsah uvnitř adresáře.-l
nebo--links
:zkopíruje symbolické odkazy jako symbolické odkazy, nezkopíruje soubor, na který odkazují, aby se zabránilo zpětným smyčkám do jiných adresářů.-p
nebo--perms
:zachová oprávnění k souboru.-t
nebo--times
:zachová původní časová razítka úprav.-g
nebo--group
:zachová vlastnictví skupin souborů.-o
nebo--owner
:zachovává vlastníky souborů.-D
:zachová soubory zařízení a speciální soubory. Můžete použít možnosti--devices
a--specials
abyste toho dosáhli.
Některé další možnosti, které lze použít, jsou:
-progress
:zobrazuje stav postupu na soubor.--max-size=SIZE
:zabrání přenosu souborů větších, než je zadaná velikost.--min-size=SIZE
:zabrání přenosu souborů menších než zadaná velikost.
Zdrojové a cílové cesty
Je důležité vzít v úvahu, jak jsou specifikovány zdrojové a cílové cesty, protože lomítko může změnit chování.
Například ke zkopírování všeho do adresáře s názvem /home
do jiného s názvem /new/destination/
správný rsync
syntaxe by byla:
rsync -a /home/ /new/destination
Chcete-li zkopírovat adresář tak, že vytvoříte novou složku s názvem home
je také vytvořen v cílovém adresáři, syntaxe by byla:
rsync -a /home /new/destination
Všimněte si, že jedno lomítko za /home
změní konečný výsledek.
Použití rsync se vzdáleným hostitelem
Pokud máte SSH přístup ke vzdálenému hostiteli, je možné použít rsync
s opravdu podobnou syntaxí. Chcete-li zkopírovat obsah z /home
do adresáře /home/new
adresář v hostiteli s názvem REMOTE_HOST
zatlačením operace je nutná. Syntaxe by byla:
rsync -a /home USER@REMOTE_HOST:/home/new
Pomocí rsync
je možné načíst soubory ze vzdáleného hostitele na váš místní počítač s tahem úkon. Syntaxe je podobná výše uvedené, ale nyní je zdrojem vzdálený hostitel:
rsync -a USER@REMOTE_HOST:/home/new /home
Závěry
Pomocí rsync
je spolehlivý a efektivní způsob synchronizace souborů mezi adresáři nebo hostiteli. Tradiční příkaz kopírování nezachová všechny vlastnosti souborů a bude trvat déle, protože zkopíruje vše.
Pomocí možností uvedených v tomto článku je možné určit vlastnosti, které by měly být také zkopírovány, a rsync
algoritmus zkrátí dobu úlohy kopírováním pouze rozdílů mezi zdrojem a cílem.
Související články
- Kopírujte soubory pomocí SCP a Rsync
- Zálohujte své soubory pomocí nástroje rsync