fbpx
skip to Main Content
Cos’è Rsync E Come Si Usa Per Fare Backup Dei Dati Su Linux

Rsync, acronimo di “remote synchronization,” è uno strumento potente e flessibile utilizzato per la sincronizzazione e il trasferimento efficiente di file e directory tra sistemi Linux (e non solo).

La sua versatilità e affidabilità lo rendono uno strumento indispensabile per gli amministratori di sistemi Linux e gli utenti avanzati che necessitano di gestire la distribuzione e la copia di dati tra dispositivi o server. In questo articolo, esploreremo cos’è Rsync, forniremo una guida pratica su come utilizzarlo e discuteremo brevemente il suo ruolo nei backup dei dati

Cos’è Rsync?

Rsync è un’applicazione open-source di sincronizzazione dei file che opera attraverso la riga di comando Linux. La sua caratteristica distintiva è la capacità di effettuare trasferimenti incrementali, riducendo il tempo e la larghezza di banda richiesti per mantenere dati aggiornati su diversi dispositivi. Inoltre, è progettato per essere efficiente nella gestione di file di grandi dimensioni e può essere utilizzato su reti locali o remote.

Principali Caratteristiche di Rsync

  • Trasferimenti Incrementali: è in grado di trasferire solo le parti di un file che sono state modificate, riducendo il tempo e la quantità di dati da trasmettere.
  • Compressione: per ottimizzare la velocità di trasferimento supporta la compressione dei dati durante il processo di sincronizzazione.
  • Sincronizzazione su Reti Locali e Remote: può essere utilizzato per sincronizzare file tra dispositivi collegati direttamente o su reti remote tramite SSH (Secure Shell).
  • Gestione delle Autorizzazioni e dei Proprietari: mantiene le informazioni sulle autorizzazioni e i proprietari dei file durante la sincronizzazione.

Come Usare Rsync su Linux

E’ necessario aprire il terminale che trovi sul tuo sistema operativo Linux e di seguito sono riportati alcuni esempi comuni di utilizzo.

I parametri più comuni

-v significa verbose, mostrerà più informazioni a schermo

-r significa recursive, con questa opzione rsync leggerà ricorsivamente nelle cartelle

-a significa archive, riporta tutte le condizioni originali del file dalla destinazione alla sorgente come timestamp, link simbolici, permessi, proprietario e gruppo

Sincronizzazione Locale


Questo comando sincronizzerà il contenuto della cartella di origine con quella di destinazione in locale. Utile se si vuole sincronizzare i dati su un disco montato localmente, ad esempio un disco USB.

Sincronizzazione Remota con SSH su Linux

Utilizzando l’opzione -e ssh, è possibile sincronizzare i dati su un server remoto tramite SSH. In questo modo i dati saranno

rsync -avr -e  ssh /percorso/sorgente/ utente@indirizzo_server_remoto:/percorso/destinazione/  




Trasferimento con Compressione

L’opzione -z abilita la compressione durante il trasferimento, permettendo una velocità maggiore.

rsync -avrz -e  ssh /percorso/sorgente/ utente@indirizzo_server_remoto:/percorso/destinazione/




Come Usare Rsync per Fare un Backup dei dati

Per eseguire un backup veloce dei tuoi dati, puoi adottare il seguente approccio:

rsync -avr -e --delete  ssh /percorso/sorgente/ utente@indirizzo_server_remoto:/percorso/destinazione/

Questo comando sincronizzerà la cartella dei dati con la cartella di backup, garantendo che i dati eliminati dalla cartella di origine vengano anche rimossi dalla cartella di backup. L’opzione –delete è fondamentale per assicurare che il backup rifletta accuratamente lo stato attuale dei tuoi dati.

Impostare un limite di banda

Quando effettuiamo sincronizzazioni tra le directory remote dei sistemi Linux, per non saturare la banda, è spesso necessario impostare un limite di velocità . Limitiamo la banda in upload con l’opzione --bwlimit=KBPS, esempio

rsync -avr -e --bwlimit=100  ssh /percorso/sorgente/ utente@indirizzo_server_remoto:/percorso/destinazione/

Visualizzare l’avanzamento del trasferimento

Per visualizzare l’avanzamento durante il trasferimento, è sufficiente usare l’opzione  –progress

rsync -avr  --progress /percorso/sorgente/ utente@indirizzo_server_remoto:/percorso/destinazione/
Dimostrazione di rsync e parametro --progress

Dimostrazione di rsync e parametro –progress

Effettuare una simulazione

Se è la prima volta che usiamo questo comando oppure vogliamo capire cosa succederà una volta eseguito, è possibile eseguire una simulazione per assicurarci di aver fatto tutto giusto. Aggiungiamo l’opzione --dry-runr

rsync -avr -e --dry-run  ssh /percorso/sorgente/ utente@indirizzo_server_remoto:/percorso/destinazione/

Conclusione

Abbiamo visto come incorporare Rsync nei tuoi processi di backup non solo semplifica il processo, ma offre anche un modo rapido ed efficiente per proteggere i tuoi dati critici da perdite accidentali o guasti hardware.

Se vuoi provare questi comandi su un server di test puoi utilizzare NethServer, un sistema sicuro sviluppato su base Linux e completamente Free Software. Puoi provare ad eseguire simulazioni, sincronizzazioni e il trasferimento di dati documentati in questo articolo.

Alessio Fattorini - Community Marketing Manager

Particolarmente attratto da tutto quello che aiuta ed incentiva le persone a lavorare e collaborare insieme.
In Nethesis creo community, racconto storie e lavoro con l'Open Source.
Community Strategist, Copywriter, Speaker internazionale e Linux Sysadmin

Back To Top