Linux - Rsync su server remoto senza password

Supponiamo di avere due server Centos01 Centos02 

Supponiamo di avere due share in / per ciascun rispettivo server


share1
share2


Creiamo su entrambi i server il seguente utente:


Utente: test
Password: test1234

1. yum install rsync


2. loggarsi in locale con l'utente test e 


3. ssh-keygen  - Dare sempre invio


4. ssh-copy-id -i ~/.ssh/id_rsa.pub remote-host


5. ssh-copy-id aggiunge le chiavi in /.ssh/authorized_keys


6. ssh remote_host dovremmo loggarsi sull'host remoto senza che venga chiesta la password

2. rsync -arve --numeric-ids --delete /share1/ test@192.168.137.128:/share2/
  • -a = archive - significa che preserva le permissions (owners, groups), ora e data, symbolic links, e dispositivi.(copia con le opzioni -rlptgoD)
  • -r Recursively copy directories.
    -l Copy symlinks as symlinks.
    -p Copy permissions.
    -t Copy timestamps.
    -g Copy group permissions.
    -o Copy ownership permissions.
    -D Preserve device (character and block
  • -z: applica la compressione "al volo" ad alcuni file.
  • -v: viene visualizzato a video il protrarsi delle operazioni di copia
  • --delete: induce rsync a cancellare tutti i file nel percorso di destinazione (quello locale, nel nostro caso) che non siano presenti nella sorgente.
  • --exclude='*.zip' --exclude='.svn' --exclude='tmp/': esclude i file con alcune estensioni 
  • --include stessa sintassi dell'opzione precedente 
  • -n, --dry-run simula il funzionamento senza operare
  • --numeric-ids: dice a rsync di non mappare userid e groupid
  • test: è il nome utente da utilizzare per l'accesso al server remoto
  • e: permette di usare ssh
  • centos02: è l'indirizzo del server remoto
  • /share1/: quale cartella del server locale volete fotocopiare? indicatelo qui. Ricordate di concludere il percorso con una barra (/), oppure vi ritroverete con un livello gerarchico aggiuntivo in locale. In caso dobbiate gestire degli spazi nel percorso, racchiudete tutto fra apice e doppioapice ('"): '"/usr/percorso file remoti/"'
  •  test@centos02:share2/ indica di collegarsi al server remoto con l'utente test nella cartella \\nas\backup con password memorizzata in --password-file=/etc/rsyncd.secrets