Automatizzare l'inserimento password in rsync
Utilizzo rsync
come strumento per fare backup e sincronizzazione delle mie cartelle personali e di lavoro.
Ho un semplice script che effettua l’operazione
rsync -ruv /PATH/TO/FOLDER_1/* rsync://USER@HOST:/PATH/TO/DESTINATION_1
rsync -ruv /PATH/TO/FOLDER_2/* rsync://USER@HOST:/PATH_TO_DESTINATON_2
Lo script esegue due chiamate rsync
perché voglio sincronizzare due cartelle (e relative sottocartelle) specifiche tra le molte
presenti e questa è la soluzione più semplice che ho trovato.
Il problema è che quando eseguo lo script mi viene richiesta due volte la password dell’utente USER
per ogni esecuzione e questo
è piuttosto noioso.
Guardando la documentazione di rsync ho trovato che è possibile automatizzare l’inserimento di questa password in due modi
- Utilizzando una variabile di ambiente
export RSYNC_PASSWORD=superpassword
rsync -ruv /PATH/TO/FOLDER_1/* rsync://USER@HOST:/PATH/TO/DESTINATION_1
rsync -ruv /PATH/TO/FOLDER_2/* rsync://USER@HOST:/PATH_TO_DESTINATION_2
- Utilizzando un apposito file per le password
rsync -ruv --password-file=/PATH/TO/PWDFILE /PATH/TO/FOLDER_1/* rsync://USER@HOST:/PATH/TO/DESTINATION_1
rsync -ruv --password-file=/PATH/TO/PWDFILE /PATH/TO/FOLDER_2/* rsync://USER@HOST:/PATH_TO_DESTINATON_2
L’opzione vuole un path assoluto per il file e il file deve avere solo permessi per l’utente proprietario (esempio: 500)