Rsync è un potente strumento basato su Linux che permette la sincronizzazione dei file tra due computer sulla stessa rete o tra un computer e un’unità di archiviazione esterna. Una caratteristica distintiva di rsync è la sua capacità di sincronizzare solo i file che sono stati modificati dall’ultima sincronizzazione, risparmiando tempo e larghezza di banda.
L’uso più semplice di rsync per le sincronizzazioni di file è il seguente:
```
rsync -avz /percorso/sorgente /percorso/destinazione
```
Il comando sopra sincronizza tutti i file dalla directory “/percorso/sorgente” con la directory “/percorso/destinazione”. Tuttavia, la bellezza di rsync è che se eseguito per la seconda volta, copierà solo i file che sono cambiati dalla prima sincronizzazione.
Gli argomenti utilizati nel comando sono:
- “-a” indica a rsync di mantenere le stesse autorizzazioni, tempi di modifica e altre informazioni dei file copiati.
- “-v” sta per “verbose” e dice a rsync di mostrare i dettagli di cosa sta facendo durante l’operazione.
- “-z” comprime i dati prima del trasferimento per risparmiare larghezza di banda.
Quindi, se desideri eseguire una sincronizzazione remota, puoi utilizzare il comando rsync nel seguente modo:
```
rsync -avz -e ssh /percorso/sorgente utente@server_remoto:/percorso/destinazione
```
In questo esempio, “utente@server\_remoto” specifica l’utente e l’host remoto a cui si desidera connettersi usando SSH. Il comando “-e ssh” dice a rsync di utilizzare SSH per la comunicazione di rete.
Se vuoi assicurarti che rsync non sincronizzi file cancellati o cambiati nella directory di destinazione, puoi aggiungere l’opzione “—delete” allo script rsync. Questa opzione rimuoverà i file presenti nella directory di destinazione che non esistono nella directory sorgente.
```
rsync -avz —delete /percorso/sorgente /percorso/destinazione
```
Ricorda: usare rsync può essere potente e veloce, ma può anche essere pericoloso se non si comprende appieno come funziona. Assicurati di aver effettuato un backup dei tuoi dati prima di utilizzare rsync su larga scala o su dati critici.
Queste informazioni sono state prese dai seguenti link:
- “How to Use Rsync for Local and Remote Data Transfer and Synchronization” dalla comunità di tecmint: https://www.tecmint.com/rsync-local-remote-file-synchronization-commands/
- “Rsync (Remote Sync): 10 Practical Examples of Rsync Command in Linux” da hostingadvice: https://www.hostingadvice.com/how-to/rsync-command-line-examples/.