Unison - Usa ka Ultimate Lokal/Remote File Synchronization Tool para sa Linux


Ang Pag-synchronize sa File mao ang proseso sa pagsalamin, mga file ug data sa duha o daghan pa nga mga lokasyon subay sa pipila nga mga protocol. Ang mga File ug Data mao ang labing bililhon nga butang niining panahon sa Information Technology. Pinaagi sa File Synchronization, among gisiguro nga ang usa o daghan pang mga kopya sa among bililhon nga datos kanunay nga magamit kung adunay katalagman sa bisan unsang klase o kung kinahanglan namon nga magtrabaho sa daghang mga lokasyon.

Ang usa ka maayo nga File Synchronizer kinahanglan nga adunay sa ubos nga gilista nga Mga Feature:

  1. Cryptographic synchronization, isip usa ka Security Implementation.
  2. Usa ka maayong ratio data compression.
  3. Usa ka Hingpit nga pagpatuman sa algorithm aron masusi ang pagdoble sa datos.
  4. Pagsubay sa pagbag-o sa tinubdan sa file.
  5. Gi-iskedyul nga Pag-synchronize.

Usa sa maong himan mao ang Unison. Dinhi niining artikuloha atong hisgotan ang \Unison sa mga detalye, uban sa mga bahin niini, gamit ug daghan pa.

Unsa ang Unison?

Ang Unison kay usa ka cross-platform file synchronization application nga mapuslanon sa pag-synchronize sa data tali sa duha o daghan pang lokasyon ma-computer o storage device.

  1. Gipagawas ubos sa General Public License (GPL)
  2. Open Source ug Cross Platform Anaa alang sa (Linux, Unix, BSD, Windows, Mac)
  3. Ihimo nga magamit ang parehas nga bersyon sa file sa lainlaing makina, bisan pa sa katapusan nga giusab nga lokasyon.
  4. Posible ang Cross Platform Synchronization i.e., ang usa ka Windows machine mahimong ma-synchronize sa *nix Server.
  5. Pagkomunikar sa standard Protocol TCP/IP i.e., posible tali sa bisan unsang duha ka makina sa internet bisan unsa pa ang Geographical Location.
  6. Smart Management – Ipakita ang panagsumpaki kung ang usa ka file giusab sa duha ka tinubdan ug ipakita kini sa user.
  7. Secured SSH Connection – Usa ka encrypted data transfer.
  8. rsync algorithm kay gipakatap dinhi, ang giusab lang nga bahin ang gibalhin ug gi-overwrite. Busa. paspas kini sa pagpatuman ug Pagmentinar.
  9. Lig-on sa kinaiyahan
  10. Gisulat sa \Objective Caml programming Language.
  11. Hingkod na ug Lig-on, walay gikinahanglang aktibong pag-uswag.
  12. Kini usa ka user-level nga programa ie., Ang aplikasyon wala magkinahanglan ug superuser nga pribilihiyo.
  13. Nailhan kini sa klaro ug tukma nga espesipikasyon.

Pag-instalar sa Unison sa Linux

Ang kasamtangan nga lig-on nga pagpagawas (Unison-2.40.102) mahimong ma-download gikan sa link sa ubos:

Pag-download sa Unison 2.40.102 Stable

Sa laing bahin, mahimo usab natong i-download ug I-install ang \Unison, kung kini anaa sa repo gamit ang apt o yum nga sugo sama sa gipakita sa ubos.

Ablihi ang terminal gamit ang Ctr + Alt + T ug padagana ang mosunod nga command sa terminal.

$ sudo apt-get install unison

Una, i-enable ang EPEL repository ug dayon i-install gamit ang mosunod nga command.

$ sudo yum install unison

PAHINUMDOM: Ang sugo sa ibabaw mag-instalar sa Unison nga walay GUI. Kung kinahanglan nimo nga I-install ang Unison nga adunay suporta sa GUI, i-install ang 'unison-gtk' nga pakete (Anaa ra alang sa mga distro nga nakabase sa Debian) gamit ang mando sa ubos.

# apt-get install unison-gtk

Giunsa Paggamit ang Unison

Ang unison gigamit sa pag-synchronize sa usa ka set sa mga file sa usa ka directory tree ngadto sa lain nga lokasyon nga adunay parehas nga istruktura, nga mahimong usa ka lokal nga host o layo nga host.

Paghimo og 5 nga mga file ubos sa imong Desktop ug dayon i-synchronize kini sa usa ka folder nga gitawag og 'desk-back' sa imong home directory.

$ 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

Karon pagdagan ang 'unison' nga sugo aron i-synchronize ang imong mga file sa Desktop sa ilawom sa 'desk-back' sa imong home directory.

$ unison /home/server/Desktop /home/server/desk-back/
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)

Karon susiha ang lokasyon /home/server/desk-back, kung malampuson ang proseso sa pag-synchronize?

$ cd /home/server/desk-back/
$ ls

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

Alang sa hilit nga pag-synchronize sa file, kinahanglan nga adunay parehas nga bersyon sa Unison nga na-install sa lokal ug layo nga server. Pagdalagan ang mosunod nga sugo aron mapamatud-an nga ang lokal nga unison makasugod ug makakonektar sa hilit nga unison server.

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

Ang mga resulta sa ibabaw, nagpakita nga ang hilit nga server malampuson nga konektado, karon i-sync ang mga file gamit ang ubos nga sugo.

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

Ang una nga lakang mao ang pagtakda sa profile nga kinahanglan nimo nga itakda ang sukaranan nga kasayuran ingon ngalan sa usa ka profile ug kung unsa ang gusto nimo nga i-synchronize, gigikanan ug lokasyon sa destinasyon, ug uban pa.

Aron masugdan ang Unison GUI, padagana ang mosunod nga command sa terminal.

$ unison-gtk

Kung mabuhat na ang profile ug masulod ang gigikanan ingon man ang destinasyon, giabi-abi kami sa ubos nga bintana.

Pilia lang ang tanan nga mga file ug i-klik ang OK. Ang mga file magsugod sa pag-synchronize gikan sa duha ka direksyon, base sa katapusang update nga time stamp.

Konklusyon

Ang Unison usa ka talagsaon nga himan nga nagpaposible nga adunay custom nga pag-synchronize sa bisan unsang paagi (Bidirectional), anaa sa GUI ingon man command Line Utility. Gihatag ni Unison ang gisaad niini. Kini nga himan sayon kaayo nga gamiton ug wala magkinahanglan og dugang nga paningkamot. Isip usa ka tester nakadayeg kaayo ko niini nga aplikasyon. Kini adunay daghang mga bahin nga mahimong ipatuman kung gikinahanglan. Para sa dugang nga impormasyon basaha ang unison-manual.

  1. Rsync (Remote Sync) sa mga File
  2. Rsnapshot (Rsync Based) File Synchronizer

Kana lang sa pagkakaron. Mobalik na usab ako dinhi uban ang laing makapaikag nga artikulo. Hangtud unya magpabilin nga tuned ug konektado sa Tecmint. Ayaw kalimti ang paghatag kanamo sa imong bililhon nga feedback sa among seksyon sa komento.