Howto / Linux
Sincronizzare directory con Rsync over SSH
Author: Tafaz
Visits: 3173
Date: 18.10.2008
ed ora ci colleghiamo al server e appendiamo la chiave pubblica all'elenco delle chiavi autorizzate nel file authorized_keys
tafaz@ubuntu:~$ ssh tafaz@192.168.1.200
tafaz@192.168.1.200's password:
Linux Storage 2.6.24-16-server #1 SMP Thu Apr 10 13:58:00 UTC 2008 i686
The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.
To access official Ubuntu documentation, please visit:
http://help.ubuntu.com/
Last login: Sat Oct 18 00:11:56 2008 from 192.168.1.200
tafaz@Storage:~$ cd .ssh/
tafaz@Storage:~/.ssh$ ls -la |grep authorized_keys
se il risultato di questo comando è vuoto creiamo il file con
tafaz@Storage:~/.ssh$ touch authorized_keys
ed ora appendiamo ad authorized_keys il contenuto del file ssh-keys.pub e cancelliamo il file ssh-keys.pub che non serve più
tafaz@Storage:~/.ssh$ cat ssh-keys.pub >> authorized_keys
tafaz@Storage:~/.ssh$ rm -rf ssh-keys.pub
ora dalla macchina client testiamo che la connessione via ssh funzioni senza richiesta di password passando come parametro la chiave privata ssh-keys
tafaz@ubuntu:~$ ssh -i /home/tafaz/.ssh/ssh-keys 192.168.1.200
se ciò funziona procediamo con la parte di sincronizzazione dei file da /var/www sul client verso /var/www su server, ovviamente l'utente tafaz su server dovrà avere permessi di scrittura nella directory /var/www
tafaz@ubuntu:~$ rsync -az --delete -e "ssh -i /home/tafaz/.ssh/ssh-keys" /var/www tafaz@192.168.1.200:/var/www
in poche parole rsync sincronizzerà il contenuto di /var/www di client in /var/www su server
-a specifica di preservare permessi, ownershipe date dei files trasferiti
-z specifica di comprimere i dati da trasferire
--delete indica che se dei file sono stati eliminati da client verranno eliminati anche su server
-e "ssh -i /home/tafaz/.ssh/ssh-keys" indica la shell che rsync deve usare (nel nostro caso ssh)
/var/www è la directory sorgente
tafaz@192.168.1.200:/var/www è la directory di destinazione
Author: Tafaz
Visits: 3173
Date: 18.10.2008
ed ora ci colleghiamo al server e appendiamo la chiave pubblica all'elenco delle chiavi autorizzate nel file authorized_keys
tafaz@ubuntu:~$ ssh tafaz@192.168.1.200
tafaz@192.168.1.200's password:
Linux Storage 2.6.24-16-server #1 SMP Thu Apr 10 13:58:00 UTC 2008 i686
The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.
To access official Ubuntu documentation, please visit:
http://help.ubuntu.com/
Last login: Sat Oct 18 00:11:56 2008 from 192.168.1.200
tafaz@Storage:~$ cd .ssh/
tafaz@Storage:~/.ssh$ ls -la |grep authorized_keys
se il risultato di questo comando è vuoto creiamo il file con
tafaz@Storage:~/.ssh$ touch authorized_keys
ed ora appendiamo ad authorized_keys il contenuto del file ssh-keys.pub e cancelliamo il file ssh-keys.pub che non serve più
tafaz@Storage:~/.ssh$ cat ssh-keys.pub >> authorized_keys
tafaz@Storage:~/.ssh$ rm -rf ssh-keys.pub
ora dalla macchina client testiamo che la connessione via ssh funzioni senza richiesta di password passando come parametro la chiave privata ssh-keys
tafaz@ubuntu:~$ ssh -i /home/tafaz/.ssh/ssh-keys 192.168.1.200
se ciò funziona procediamo con la parte di sincronizzazione dei file da /var/www sul client verso /var/www su server, ovviamente l'utente tafaz su server dovrà avere permessi di scrittura nella directory /var/www
tafaz@ubuntu:~$ rsync -az --delete -e "ssh -i /home/tafaz/.ssh/ssh-keys" /var/www tafaz@192.168.1.200:/var/www
in poche parole rsync sincronizzerà il contenuto di /var/www di client in /var/www su server
-a specifica di preservare permessi, ownershipe date dei files trasferiti
-z specifica di comprimere i dati da trasferire
--delete indica che se dei file sono stati eliminati da client verranno eliminati anche su server
-e "ssh -i /home/tafaz/.ssh/ssh-keys" indica la shell che rsync deve usare (nel nostro caso ssh)
/var/www è la directory sorgente
tafaz@192.168.1.200:/var/www è la directory di destinazione
<<
Page 3 of 3
Se vuoi discutere con noi su questo articolo o comunque vuoi porci delle domande usa il nostro Forum

