Rsync
Sissejuhatus
Rsync on vaba tarkvara unixi laadsetele süsteemidele mis sünkroniseerib faile ja kaustu ühest asukohast teise. Kasutades kodeerimist vähendades infomahte.
veebisait http://rsync.samba.org/
Lihtne näide rsync kasutamisest
sünkroniseerime faili lokaalsest masinast teise nimega host.ee
rsync fail kasutaja@host.ee:
sünkroniseerime kausta lokaalsest masinast ümber
rsync -a kaust kasutaja@host.ee:
Sellise näite järgi on kõige lihtsam failide sünkroniseerimine. Toimib see samuti üle ssh ning on koormust tekitav viis.
rsync deemonina
Vajalik näiteks varundusserverile. Rsync deemon kuulab pidevalt ja võimaldab parooliga ligipääsu lugemiseks/kirjutamiseks teatud kaustadele
/etc/rsyncd.conf freebsdl /usr/local/etc/rsyncd.conf
uid = root gid = root use chroot = no max connections = 25 log file=/var/log/rsyncd.log [failid] path = /kus/failid/on comment = failid [pildid] path = /kus/pildid/on comment = failid dont compress = *
FreeBSD's tuleb rida gid = root asendada reaga gid = wheel
sellega tekitasime seadistuse kus on kaks jaotist
failid ja pildid. Piltidele ütleme dont compress = *
kuna piltide pakkimine annab vähe eelist sama võib teha ka videote kaustadega.
vaikimisi juba ei teha seda failidele laiendiga *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz
Logimist võib korraldada ka läbi syslogi'i kasutades rida
syslog facility = local5
täpsemalt on seletatud asja logimise palas lahti http://kuutorvaja.eenet.ee/wiki/Logi. Võimalik seada local0 kuni locan7ni
tulemüür
rsync töötades deemonina kasutab porti tcp 873
linux iptablesis saame müüri teha pordi lahti käsuga
iptables -I INPUT -p tcp -s ip_192.168.1.10 --dport 873 -j ACCEPT
FreeBSD packet filteris
pass in on $ext_if proto tcp from { 192.168.1.10 } to port 873
Muidugi võib seadistusfaili kirjutada kohe
hosts allow = *.host.ee hosts deny = *
nüüd võime anda käsu
rsync -a kaust root@host::failid
üleslaetud failide nimistut saab
rsync -v --list-only -a root@host.ee::pildid
kui pole öeldud muidugi list = false
kasutajad - paroolid
Soovides lubada varundamisele kliente ligi vaid parooliga tuleks share teha selliselt
[failid] path = /kus/failid/on comment = failid auth users = kasutaja secrets file = /etc/rsyncd.pass
tekitame faili /etc/rsyncd.pass
paroolid hoitakse selles plaintextina. Tuleks jälgida ,et fail poleks world readable
milleüle hakkaks rsync kurtma
faili võime kirjutada näiteks
kasutaja:kasutaja
käsk paroolifailiga sünkroniseerimiseks ,et saada kaust /etc varundatud võiks olla siis näiteks
rsync --password-file /etc/rsyncd.pass -a /etc kasutaja@192.168.1.10::backup
Soovides limiteerida aeglasema kiirusega kohtades rsync kiirust tuleks kasutada rsync omadust --bwlimit=KBPS