Ricerca nel sito web

Unison: uno strumento definitivo per la sincronizzazione dei file locale/remoto per Linux


La sincronizzazione dei file è il processo di mirroring di file e dati in due o più posizioni in conformità con determinati protocolli. File e dati sono la cosa più preziosa in questa era della tecnologia dell'informazione. Grazie alla sincronizzazione dei file, ci assicuriamo che una o più copie dei nostri preziosi dati siano sempre disponibili in caso di disastro di qualsiasi tipo o quando dobbiamo lavorare in più luoghi.

Si suppone che un buon sincronizzatore di file abbia le funzionalità elencate di seguito:

  1. Sincronizzazione crittografica, come implementazione di sicurezza.
  2. Un buon rapporto di compressione dei dati.
  3. Un'implementazione dell'algoritmo perfetta per controllare la duplicazione dei dati.
  4. Tieni traccia delle modifiche all'origine del file.
  5. Sincronizzazione pianificata.

Uno di questi strumenti è Unison. In questo articolo discuteremo di "Unison" in dettaglio, insieme alle sue caratteristiche, funzionalità e molto altro ancora.

Cos'è l'Unisono?

Unison è un'applicazione di sincronizzazione file multipiattaforma utile per sincronizzare i dati tra due o più posizioni, siano essi computer o dispositivi di archiviazione.

Caratteristiche di Unison

  1. Rilasciato sotto la General Public License (GPL)
  2. Open Source e multipiattaforma disponibili per (Linux, Unix, BSD, Windows, Mac)
  3. Rendi disponibile la stessa versione del file su computer diversi, indipendentemente dall'ultima posizione modificata.
  4. È possibile la sincronizzazione multipiattaforma, ovvero una macchina Windows può essere sincronizzata su un server *nix.
  5. Comunicare tramite il protocollo standard TCP/IP, ovvero possibile tra due macchine qualsiasi su Internet indipendentemente dalla posizione geografica.
  6. Gestione intelligente: mostra il conflitto quando un file è stato modificato su entrambe le sorgenti e lo mostra all'utente.
  7. Connessione SSH protetta: trasferimento di dati crittografati.
  8. Qui viene distribuito l'algoritmo rsync, solo la parte modificata viene trasferita e sovrascritta. Quindi. è veloce nell'esecuzione e nella manutenzione.
  9. Di natura robusta
  10. Scritto nel linguaggio di programmazione "Objective Caml".
  11. Maturato e stabile, non è richiesto alcuno sviluppo attivo.
  12. È un programma a livello utente, ovvero l'applicazione non necessita di privilegi di superutente.
  13. È noto per le sue specifiche chiare e precise.

Installazione di Unison in Linux

L'attuale versione stabile (Unison-2.40.102) può essere scaricata dal collegamento seguente:

Scarica Unison 2.40.102 stabile

In alternativa, possiamo anche scaricare e installare “Unison”, se è disponibile nel repository utilizzando il comando apt o yum come mostrato di seguito.

Su Debian/Ubuntu/Linux Mint

Apri il terminale utilizzando "Ctr+Alt+T" ed esegui il seguente comando sul terminale.

sudo apt-get install unison
Su RHEL/CentOS/Fedora

Innanzitutto, abilita il repository EPEL e quindi installa utilizzando il comando seguente.

sudo yum install unison

NOTA: il comando precedente installerà Unison senza GUI. Se devi installare Unison con il supporto della GUI, installa il pacchetto "unison-gtk" (disponibile solo per distribuzioni basate su Debian) utilizzando il comando seguente.

apt-get install unison-gtk

Come utilizzare l'unisono

Unison viene utilizzato per sincronizzare un insieme di file in un albero di directory in un'altra posizione con struttura simile, che potrebbe essere un host locale o remoto.

Sincronizzazione dei file locali

Creiamocreiamo 5 file sotto il tuo desktop e poi sincronizziamoli in una cartella chiamata "desk-back" nella tua directory home.

cd Desktop/
touch 1.txt 2.txt 3.txt 4.txt 5.txt
ls

1.txt 2.txt 3.txt 4.txt 5.txt
mkdir /home/server/desk-back

Ora esegui il comando "unison" per sincronizzare i file del tuo desktop in "desk-back" nella tua directory home.

unison /home/server/Desktop /home/server/desk-back/
Uscita del campione
Contacting server...
Looking for changes
Warning: No archive files were found for these roots, whose canonical names are:
/home/server/Desktop
/home/server/desk-back
This can happen either
because this is the first time you have synchronized these roots,
or because you have upgraded Unison to a new version with a different
archive format.
Update detection may take a while on this run if the replicas are
large.
Unison will assume that the 'last synchronized state' of both replicas
was completely empty. This means that any files that are different
will be reported as conflicts, and any files that exist only on one
replica will be judged as new and propagated to the other replica.
If the two replicas are identical, then no changes will be reported.If you see this message repeatedly, it may be because one of your machines
is getting its address from DHCP, which is causing its host name to change
between synchronizations. See the documentation for the UNISONLOCALHOSTNAME
environment variable for advice on how to correct this.
Donations to the Unison project are gratefully accepted:
http://www.cis.upenn.edu/~bcpierce/unison
Press return to continue.[]
...
...
Saving synchronizer state
Synchronization complete at 13:52:15 (5 items transferred, 0 skipped, 0 failed)

Ora controlla la posizione /home/server/desk-back, se il processo di sincronizzazione ha avuto successo?

cd /home/server/desk-back/
ls

1.txt 2.txt 3.txt 4.txt 5.txt

Sincronizzazione di file remoti

Per la sincronizzazione dei file remoti, è necessario che sia installata la stessa versione di Unison sia sul server locale che su quello remoto. Eseguire il comando seguente per verificare che l'unisono locale possa avviarsi e connettersi al server unison remoto.

unison -testServer /home/ravisaive/Desktop/ ssh://172.16.25.125//home/ravisaive/Desktop/
Uscita del campione
Contacting server...
[email 's password: 
Connected [//tecmint//home/ravisaive/Desktop -> //tecmint//home/ravisaive/Desktop]

I risultati sopra indicati indicano che il server remoto è connesso correttamente, ora sincronizza i file utilizzando il comando seguente.

unison -batch /home/ravisaive/Desktop/ ssh://172.16.25.125//home/ravisaive/Desktop/

Esecuzione della GUI Unison

Il primo passo è impostare il profilo che richiede di impostare informazioni di base come nome di un profilo e cosa si desidera sincronizzare, posizione di origine e di destinazione, ecc.

Per avviare la GUI Unison, eseguire il comando seguente sul terminale.

unison-gtk

Una volta creato il profilo e inserita la fonte e la destinazione, ci viene presentata la finestra sottostante.

Seleziona semplicemente tutti i file e fai clic su OK. I file inizieranno la sincronizzazione da entrambe le direzioni, in base all'orario dell'ultimo aggiornamento.

Conclusione

Unison è uno strumento meraviglioso che rende possibile avere una sincronizzazione personalizzata in entrambi i casi (bidirezionale), disponibile nella GUI e nell'utilità della riga di comando. Unison fornisce ciò che promette. Questo strumento è molto facile da usare e non richiede alcuno sforzo aggiuntivo. Come tester sono rimasto molto colpito da questa applicazione. Ha un sacco di funzionalità che possono essere implementate secondo necessità. Per ulteriori informazioni leggere il manuale unison.

Leggi anche:

  1. Rsync (sincronizzazione remota) dei file
  2. Sincronizzatore di file Rsnapshot (basato su Rsync).

È tutto per ora. Presto sarò di nuovo qui con un altro articolo interessante. Fino ad allora restate sintonizzati e connessi a Tecmint. Non dimenticare di fornirci il tuo prezioso feedback nella nostra sezione commenti.