Se abbiamo la necessità di eseguire dei backup corposi tra due macchine della stessa rete locale ci viene in aiuto il fantastico tool Rsync.
Rsync è un potentissimo software a riga di comando per la sincronizzazione di file e cartelle in ambiente Unix, Windows e Mac OS.
Esso può funzionare in due modalità
1) Come Demone Rsyncd
2) All’interno di un Tunnell SSH
Oggi andremo a vedere la prima modalità, la modalità Demone rispetto al tunnell ssh ha un trasferimento è molto più veloce in quanto non usando nessuna crittografia impegna meno banda ed elimina eventuali overhead dovuto proprio alla crittografia.
Ho effettuato alcuni test di trasferimento su rete gigabit “Rsyncd vs SSH” di seguito i risultati:
rsync with ssh – 200-300 Mbps
rsyncd – 800 Mbps
Veniamo a noi, procediamo con la parte Server
Installiamo il demone lato server
apt-get install rsync
Abilitiamo il servizio
vim /etc/default/rsync
RSYNC_ENABLE=true
Creiamo il file di configurazione in questo modo
vim /etc/rsyncd.conf
log file = /var/log/rsyncd
transfer logging = yes
hosts allow = 192.168.7.200, 192.168.7.110
max connections = 2
hosts deny = *
uid = root
gid = root
list = true
use chroot = false
strict modes = false
read only = false
ignore nonreadable = yes
dont compress = *.gz *.tgz *.zip *.rpm *.deb *.iso *.bz2 *.jpg *.mpg *.mpeg
reverse lookup = no # Solo dalla versione 3.1.x
[Backup]
path = /backup
comment = Cartella Backup
Creiamo la cartella
mkdir /backup
Riavviamo il servizio
service rsync restart
Ora proviamo a sincronizzare una cartella verso il server rsync
ex. rsync -avzP folder [hostname/IP address]::Backup/
rsync -avzP documenti 192.168.7.50::Backup
Questo comando copiera la cartella documenti sul server rsync.
Una cosa da notare, per impostazione predefinita il demone Rsync utilizza la porta
TCP 873 per comunicare con i client, quindi ricordiamoci di aprire questa porta
se abbiamo firewall intermedi