Sincronizzazione di files con rsync

From RVM Wiki
Revision as of 17:46, 5 May 2006 by Gabriele.vivinetto (talk | contribs) (Test Rsyncd)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Si vuole creare un servizio di sincronizzazione files da un client ad un server. Dal client si lanacia un collegamento ad un file .cmd e si sincronizza il contenuto di una directory locale con una remota su un server.

Si utilizza il servizio rsync, e nel caso specifico, il server sarà Windows 2000 ed il client Windows XP

Installazione Cygwin su Server

Installare cygwin sul server, avendo cura di selezionare i componenti rsync e cygrunsrv

Installazione servizio rsyncd

Da prompt comandi, installare rsync come servizio:

cygrunsrv.exe -I "Rsyncd" -p /cygdrive/c/cygwin/bin/rsync.exe -a "--config=/cygdrive/c/cygwin/etc/rsyncd.conf --daemon --no-detach" -f "Rsync daemon service"

Configurazione Rsyncd

Creare il file C:\Cygwin\etc\rsyncd.conf

cat > /etc/rsyncd.conf <<EOFile
use chroot = false
strict modes = false

[lavori]
    path = /cygdrive/e/Lavori
    comment = Lavori Pubblistil
    read only = true
EOFile

E' possibile aggiungere più sezioni per ogni directory che si vuole rendere disponibile.

Questa è la configurazione più semplice, e NON NECESSITA DI AUTENTICAZIONE. Qualsiasi client rsync può prelevare quei files.

Test Rsyncd

Da promp del server avviare il servizio:

net start rsyncd

Testare l'accessibilà:

c:\cygwin\bin\rsync rsync://127.0.0.1

lavori          Lavori Pubblistil

Verificare che i files resi disponibili siano quelli giusti:

c:\cygwin\bin\rsync rsync://127.0.0.1/lavori

dr-xr-xr-x        4096 2005/10/01 13:04:02 .
-rwxrwxrwx        5120 2005/09/29 14:10:18 Commessa consuntivo materiali3gg.xls
-rwxrwxrwx       10752 2005/09/29 14:10:25 TabRilevazioni3gg.xls
-rwxrwxrwx       11956 2005/09/29 18:59:12 cabiate.xls
drwxrwxrwx        4096 2005/10/01 13:13:05 CLIENTI
drwxrwxrwx        4096 2005/10/01 13:04:01 Documenti
drwxrwxrwx        4096 2005/10/01 13:03:11 FILES esclusi clienti
drwxrwxrwx        4096 2005/10/01 13:01:51 Files_Posta_Elettronica
drwxrwxrwx           0 2005/10/01 13:01:50 Foto Lavori
drwxrwxrwx           0 2005/10/01 13:01:17 Immagini
drwxrwxrwx       69632 2005/10/01 13:01:17 Lavori Fresa
drwxrwxrwx           0 2005/10/01 13:01:05 My Digital Editions
drwxrwxrwx           0 2005/10/01 13:01:05 My Pictures
drwxrwxrwx           0 2005/10/01 13:01:04 NUTZ
drwxrwxrwx           0 2005/10/01 13:00:57 Plotmanager
drwxrwxrwx           0 2005/10/01 13:00:57 ScheduleOCR Input
drwxrwxrwx           0 2005/10/01 13:00:57 ScheduleOCR Output
drwxrwxrwx       40960 2005/10/03 12:35:20 TAGLI PER PLOTTER
drwxrwxrwx        4096 2005/10/03 08:37:21 TEMP.LAVORI
drwxrwxrwx           0 2005/10/01 18:02:39 Tmp

Installazione Cygwin sul Client

Installare cygwin sul client. E' sufficiente installare il sistema base e rsync. NON è necessario cygrunsrv.

Eseguire da prompt gli stessi test come al punto precedente, utilizzando l'indirizzo ip del server.

Creazione dle file batch di sincronizzazione

Creare il file batch sincronizza_lavori.cmd

@echo off
echo Inizio Sincronizazione
c:\cygwin\bin\rsync -rltgoDq --progress --stats rsync://192.168.6.200/lavori/ C:\Documenti\Lavori\
echo Fine Sincroniazione
pause

Test manuale

Lanciare lo stesso comando precedente, ma con lo switch -v e senza -q

c:\cygwin\bin\rsync -rltgoDv --progress --stats rsync://192.168.6.200/lavori/ C:\Documenti\Lavori\

Verrà ricevuta la lista dei files, e poi partirà la sincronizazione.

Al termine si avrà anche una statistica dei files copiati.

Provare ad aggiungere/modificare dei files sul server e controllare che le modifiche si sincronizzino.

Qualora si vogliano cancellari i files locali non più presenti sul server, basta aggiungere l'opzione --delete

Esecuzione Sincronizazione

Lanciare il file batch ed attendere il termine.

Rsync for Windows