Sünkroniseerimine Unison-iga

From ICO wiki
Jump to navigationJump to search

Sissejuhatus

Unison on failide sünkroniseerimise tarkvara Linux, Mac OS X ja MS Windows tüüpi operatsioonisüsteemidele. See võimaldab pidada kaustadest ning failidest ühesuguseid replikatsioone kahes erinevas sihtkohas.
Unisoni eelised ning võimalused:

  • Unison toetab paljusid enamlevinud operatsioonisüsteeme ja töötab läbi mitme platvormi samaaegselt. Näiteks võimaldab Linuxiga sülearvutit sünkroniseerida Windows serveriga.
  • Erinevalt mõnedest populaarsetest ühesuunalistest varundustarkvaradest (näiteks rsync) on Unsion kahesuunaline. See võimaldab faile töödelda mõlemas sihtkohas selliselt, et peale sünkroniseerimist ei teki andmekadu ja säilitatakse korrektne töötlus.
  • Konfliktsete muudatuste korral nõutakse kasutaja sekkumist, konfliktivabad muudatused sünkroniseeritakse automaatselt. Selliselt on tagatud failide õigesuunaline sünkroniseerimine.
  • Unison võimaldab sünkroniseerida sihtkohti, mis asuvad samas tööjaamas erinevates kaustades või mis asuvad andmevõrku ühendatud erinevates tööjaamades. Konfidentsiaalsuse tagamiseks krüpteeritakse võrgus andmeliiklus SSH abil.
  • Unison on saadaval tasuta ning selle lähtekood on litsenseeritud GNU Public License alusel.

Legend

Väikeettevõtte IT infrastruktuuris on Ubuntu operatsioonisüsteemil töötavad serverarvuti (failiserver) ja klient-tööjaamad. Klientarvuti kasutajad sünkroniseerivad oma faile serverisse, et neid siis sealt kaudu hiljem välisele meediumile varundataks.

Skoop

Artikli skoobis on Unisoni paigaldamine ja selle tööleseadmise häälestamine.
Artikli skoobis ei ole Linuxis opereerimise alusteadmiste selgitamine, IP-võrgu põhiomaduste õpetamine, võrguliideste põhjalik häälestamine ja tarkvara lähtekoodist kompileerimine.

Paigaldamine ja häälestamine

Tarkvara paigaldamine

Muuda ennast serveris juurkasutajaks:

 sudo -i

Paigalda serverisse tarkvara openSSH-server, et saaks krüpteeritult üle SSH tunneli faile sünkroniseerida:

 apt-get install openssh-server

Paigalda serverisse tarkvara Unison:

 apt-get install unison

Paigalda klientarvutisse tarkvara Unison:

 sudo apt-get install unison

Kontrolli, kas nii serveris kui ka klientarvutis on kasutusel sama Unisoni versioon. See on eelduseks, et sünkroniseerimine kahe erineva arvuti vahel toimiks!

 unison -version

Kui repositooriumitest on paigaldatud erinevad Unisoni versioonid, siis järgnevalt aadressilt leiab kõikide Unisoni versioonide lähtekoodid ise kompileerimiseks: http://www.seas.upenn.edu/~bcpierce/unison/download/releases/

Loo serverisse uus kasutaja koos kodukaustaga, mille nimeks on näiteks klient1. Selle kasutaja kasutajanime ja parooli abil ühendutakse SSH vahendusel serverisse ning selle kasutaja kodukaust on sihtkoht, kuhu klientarvuti kasutaja oma faile sünkroniseerima hakkab:

 adduser klient1

Serveri võrguaadressi häälestamine

Selle alampeatüki toimingud teosta üksnes juhul, kui serveri võrguaadress ei ole juba staatilise IP peale häälestatud. Serveri staatiline IP on oluline, et klient-tööjaam "teaks" alati serveri aadressi, kuhu poole pöörduda. Kui server pakub lisaks failihoidlale ka teisi teenuseid, siis võib staatiline IP aadress juba määratud olla.
Staatilise IP aadressi olemasolu saad kontrollida järgneva käsuga:

 cat /etc/network/interfaces | grep inet

Tähelepanu tuleb pöörata oma primaarse võrguliidese reale, näiteks iface eth0, mis ei ole välja kommenteeritud ja mis ei ole iface lo. Kui inet järele on kirjutatud static, siis on määratud staatiline IP aadress, kui on aga dhcp, siis kasutatakse automaatset IP omistamist.

Vaata ifconfig käsuga serveri hetkel töötava võrguliidese parameetrid ja vajadusel kirjuta need ülesse: ifconfig

Tee serveri võrguliideste konfiguratsioonifailist tagavarakoopia ja siis redigeeri seda:

 cp /etc/network/interfaces /etc/network/interfaces.bak
 nano /etc/network/interfaces

Muuda selle faili sisu selliselt, et primaarsele võrguliidesele omistataks IP aadress ja teised olulised võrguparameetrid staatiliselt. Kui enne omistati parameetrid automaatselt DHCP teenuse abil, siis soovitatavalt kasuta nüüd käsu ifconfig väljundis kuvatud andmeid. Näide staatilisest eth0 võrguliidese häälestusest:

 # The primary network interface
 auto eth0
 iface eth0 inet static
   address 192.168.0.100
   netmask 255.255.255.0
   network 192.168.0.0
   broadcast 192.168.0.255
   gateway 192.168.0.1

Peale võrguliideste konfiguratsioonifaili redigeerimist taaskäivita serveri võrguteenus:

 /etc/init.d/networking restart

Klientarvuti Unisoni häälestamine

Klientarvutisse tekita Unisoni konfiguratsioonifail:

 mkdir ~/.unison
 nano ~/.unison/default.prf

Faili default.prf sisuks kirjuta järgnevad read ja muuda neid vastavalt enda vajadusele:

 #Logimine faili unison.log
 logfile=/home/klient1/.unison/unison.log
 #
 #Sünkroniseeritavate kaustade juurkaustade asukohad. Peab olema täpselt kaks root rida - 
 #esimene lokaalse klientarvuti sünkroniseeritav juurkaust, teine serveris paiknev sünkroniseeritav juurkaust.
 #Serveri juurkausta määramise süntaks SSH tunneli vahendusel on 
 #ssh://<kasutajanimiServeris>@<serveriIP>//home/<kasutajaKodukaust>
 root=/home/klient1/
 root=ssh://klient1@192.168.10.??//home/klient1
 #  
 #konfliktivabade failide automaatne (kasutaja sekkumiseta) sünkroniseerimine ehk automaatselt vaikimisi toimingu aktsepteerimine
 auto = true
 #
 #Süngitavad alamkaustad ja üksikfailid
 path = Documents
 path = Pictures
 path = cryptokonteiner.tc
 #
 #Failivormingud, mida ignoreerida
 ignore = Name *.avi
 ignore = Name *.mp3
 #
 #Alamkaustad, mida ignoreerida
 ignore = Path Documents/virtuaalmasinad

Unisoni käivitamine ja kasutamine

Sünkroniseerimise käsitsi käivitamiseks käivita klientarvuti käsurealt käsk unison:

 unison

Konfliktsete muudatustega failide kohta küsitakse kasutajalt, mis suunas faile kopeerida. Küsimusele tuleb vastata õige nurksulu vajutamisega (< või >). Enne failide tegelikku kopeerimist küsitakse veelkord kasutajalt kinnitust, mille aktsepteerimiseks tuleb trükkida "y".

Kasulikud viited

Juhendi autor ja versioneerimine

Nimi: Rünno Reinu
Grupp: AK31
ITK kood: 10061916

Versioon Kuupäev Kommentaar
0.1 03.01.2009 Esialgne sisestus
0.2