Ha két gép között szeretnénk fájlokat szinkronizálni vagy biztonsági
mentéseket készíteni, akkor az rsync programot érdemes használnunk.
Én a laptop és az asztali gép szinkronizálására használom.
Először is telepítsük fel mindkét gépre az rsync programot.
A program hasonlóan használható, mint az rcp ill. scp. Lássunk néhány
példát:
rsync *.c tavoligep:progz A fenti példa az aktuális könyvtárban levő .c fájlokat másolja át atavoligep gépre. Ha a távoli gépen már léteznek ezek a .c
fájlok, akkor az rsync protokoll szerint csak a fájlok közötti különbséget
másolja át program.
rsync -avz tavoligep:src/proba /tmp Ha a fenti parancsot kiadjuk, akkor arhív (-a) módban másolja a
fájlokat az rsync. Ez azt jelenti, hogy az eszközök, a szimbolikus linkek, az
attribútumok és tulajdonosok megmaradnak a másolás során. A -v
kapcsolóval bőbeszédűvé tehetjük az rsync, míg a -z hatására
tömörítve küldi ill. fogadja az adatokat.
rsync -avz tavoligep:src/proba/ /tmp A könyvtár után írt / jel hatására a célkönyvtárban nem készül el aproba könyvtár. A következő két parancs ugyanúgy működik:
rsync -avz /src/foo /destrsync -avz /src/foo/ /dest/foo
-rsh (röviden -e) kapcsoló. Használata:
rsync -av --rsh="ssh -l ssh-user" rsync-user@host::module[/path] local-path
-b kapcsolót biztonsági mentések készítésére használhatjuk
(felülíráskor \~ végű fájl keletkezik),
a -u-val pedig csak a régebbi fájlokat fogja felülírni az rsync.
Ha a --exclude-t használjuk, nem fogja a megadott fájlokat másolgatni.
És végül a következő paranccsokkal szinkronizálom a könyvtárakat
az asztali gép és a notebook között:
rsync -e ssh -avuz --exclude '*~' --progress ~/Docs/ triton:~/Docsrsync -e ssh -avuz --exclude '*~' --progress triton:~/Docs/ ~/Docs
-P kapcsoló hatása egyezik a --partial --progress kapcsolóval.
Ennek hatására a részben letöltött fájlokat nem törli az rsync és
másolás közben látjuk a folyamat paramétereit.