Kas yra Unisonas?
„Unison“ technologija, kurią sukūrė Benjaminas C Pierce'as pagal GPL licenciją, leidžia vartotojams sinchronizuoti du atskirus failų egzempliorius toje pačioje sistemoje, bet skirtingus diskus ar dvi kitas sistemas.
„Unison“ leidžia išlaikyti atnaujintą ir identišką to paties failo ar katalogo versiją. Jis gali būti naudojamas įvairiuose kontekstuose, pvz., SSH, leidžiantis saugiai perduoti duomenis tarp įrenginių ar katalogų.
„Unison“ įrankis yra daugiaplatformis, leidžiantis vartotojams sinchronizuoti failus ir katalogus tarp tų pačių ar skirtingų operacinių sistemų veikiančių sistemų. Pavyzdžiui, galite sinchronizuoti failus iš „Linux“ sistemos su „BSD“ sistema. Dėl savo saugos funkcijų „Unison“ sinchronizuoja failus ir katalogus bei taiko nuosavybės ir leidimų teises abiejose sistemose.
„Unison“ įrankis sukurtas atsižvelgiant į saugumą ir gali išgyventi nesėkmes, kai įvyksta pertraukimų tarp sinchronizavimo taškų. Jei „Unison“ aptinka failų ir katalogų konfliktus, jis praneša apie esamus konfliktus ir leidžia vartotojams pasirinkti, kurią failų versiją naudoti.
„Unison“ gali dirbti su arba palaiko lėtus tinklus, todėl tai yra labai efektyvus pralaidumo naudojimo įrankis. Sinchronizuoja tik pasikeitusias dalis ir katalogus, taip išvengdami didelės apkrovos ir labai lengvai ir greitai atnaujindami sinchronizavimo procesą.
Nepaisant pagrindinio naudojimo konteksto, „Unison“ yra galingas įrankis, kurį galima modifikuoti, kad būtų sukurta įvairiausių naudojimo atvejų.
Šioje pamokoje bus aptariama, kaip įdiegti ir nustatyti „Unison“ failų sinchronizavimo sistemą „Debian 10“.
Kaip įdiegti „Unison“ „Debian 10“
„Unison“ yra populiari priemonė; todėl jis prieinamas oficialiose pagrindinių „Linux“ platinimų saugyklose.
Norėdami įdiegti „Unison“ komandinės eilutės versiją „Debian“, pradėkite atnaujinti sistemą:
sudo apt-get update && sudo apt-get upgradeTada įdiekite įrankį naudodami paprastą komandą apt to to to.
sudo apt-get install unison -yJei jūsų sistemoje įdiegta darbalaukio aplinka ir norite naudoti GUI versiją, įdiekite unison-gtk naudodami komandą:
sudo apt-get install unison-gtkPASTABA: Įsitikinkite, kad įdiegėte „Unison“ abiejose sistemų versijose, kuriose norite sinchronizuoti failus. Kad suderinamumas būtų kuo mažesnis ir klaidų tikimybė būtų mažesnė, geriau turėti tą pačią „Unison“ versiją abiejose sistemose.
Kaip sinchronizuoti failus su
„Unison“ pateikia būdus, kaip sinchronizuoti failus ir katalogus tarp vietinių mašinų ir nuotolinių mašinų, naudojant tiesioginius lizdo ryšius ir SSH. Kadangi sinchronizuojame du „Debian“ serverius, mes praleisime vietinių mašinų sinchronizavimą.
Unison nuotolinio ir nuotolinio sinchronizavimo per SSH
Norėdami sinchronizuoti failus ir katalogus tarp nuotolinių mašinų, turėsite „Unison“ įdiegti abiejose sistemose, turėti SSH prieigą prie abiejų sistemų ir jų IP adresų.
Taip pat galite naudoti vietinę mašiną kaip vieną serverį, o nuotolinį įrenginį - kaip kitą serverį.
- 192.168.0.200 - serveris1
- 192.168.0.201 - serveris2
Pirmas žingsnis - sukurti privatų ir viešą raktą nuotoliniame serveryje1.
ssh-keygen -t rsaGeneruojama viešųjų / privačių rsa raktų pora.
Įveskite failą, kuriame išsaugosite raktą (/ home / csalem /.ssh / id_rsa):
Sukurtas katalogas '/ home / csalem /.ssh '.
Įveskite slaptafrazę (tuščia, jei nėra slaptafrazės):
Dar kartą įveskite tą pačią slaptafrazę:
Jūsų tapatybė išsaugota aplanke / home / csalem /.ssh / id_rsa.
Jūsų viešasis raktas išsaugotas aplanke / home / csalem /.ssh / id_rsa.aludė.
Pagrindinis piršto atspaudas yra:
SHA256: 4p5YuEBEa5lrINzqPgwHRVhSS0TNlIIl70A0q2MFcS8 csalem @ Debian-PC
Raktas yra atsitiktinis meno vaizdas:
+---[RSA 2048]----+
| + / @ =… |
| = * O == |
| ++ OE . |
| + * o ... |
| o + = . S |
|++. o . |
| oo… o |
|.o . = . |
|… O o |
+----[SHA256]-----+
Greitai praleiskite raktų generavimo procesą ir išsaugokite failą. Nepridėkite slaptafrazės, nes tai gali trukdyti neprižiūrimam serverių sinchronizavimui.
Tada nukopijuokite raktą iš serverio1 į serverį2 naudodami komandą:
ssh-copy-id 192.168.0.201Dabar, kai abiejose sistemose turite SSH sąranką, galite paleisti „Unison“, kad sinchronizuotumėte failus ir katalogus.
Išbandykime „Unison“ naudojimą abiejuose serveriuose sukurdami katalogą, kurį sinchronizuosime serveryje1:
mkdir -p / dir1„Server2“ sukurkite katalogą, kaip nurodyta aukščiau
mkdir -p / dir2Kaip minėta, „Unison“ gerbia vartotojo teises. Todėl geriausia pakeisti abiejų katalogų teises ir nuosavybės teises, kad abiejuose kataloguose būtų skaitymo ir rašymo teisės.
Tada pridėkite visus duomenis, kuriuos norite sinchronizuoti tarp „Dir1“ serverių. Pavyzdžiui, pridėkite kelis ZIP failus.
sudo mv ~ / Dokumentai.zip / dir1Turėdami failus, norime sinchronizuoti tinkamame kataloge, paleiskite unison komandą sinchronizuoti iš vieno serverio kaip:
unison / dir1 ssh: // 192.168.0.201 // rež2Pirmą kartą paleidus „Unison“, gausite įspėjimą, kad sinchronizavimo procesas gali užtrukti. Jei kataloguose turite didelių failų, tai gali užtrukti, tačiau kadangi mes juos naudojame tik bandymams, tai turėtų būti gana greita.
Norėdami pradėti sinchronizavimo procesą, paspauskite „Enter“. Kai sinchronizavimo procesas bus baigtas, eikite į serverį2, eikite į „Dir2“ ir katalogo turinį išvardykite taip:
cd / dir2 && ls -la-rw-r - r-- 1 šaknies šaknis 436 sausio 5 d. 12:57 Dokumentai.užtrauktukas
„Unison“ konfigūracijos keitimas
Daugeliu atvejų mes nenorime interaktyviai sinchronizuoti failų tarp šių serverių, nes procesas yra pasikartojantis ir neefektyvus. Mes galime redaguoti „Unison“ konfigūracijos failą, kad būtų galima automatiškai sinchronizuoti failus.
Norėdami redaguoti numatytąjį konfigūracijos failą, naudokite toliau pateiktą komandą:
sudo vi ~ /.unison / default.prfĮ failą pridėkite šias eilutes:
auto = truepartija = tiesa
Pirmiau nurodytos eilutės išjungia raginimus sinchronizuojant failus, automatizuojant procesą.
„Unison Cronjob“ nustatymas
Vienas tikras dalykas yra tas, kad programuotojai labai nenori rankiniu būdu atlikti darbų, ypač kai įmanoma automatizuoti, kaip yra šiuo atveju. Mes galime nustatyti, kad „Unison“ automatiškai atliktų sinchronizavimą.
„Server1“ sukurkite paprastą „bash“ scenarijų, kad paleistumėte „unison“ komandą taip:
sudo touch / usr / bin / unisoncron && sudo vi / usr / bin / unisoncronFaile pradėkite nuo „shebang“ ir pridėkite komandą „unison sync“:
#!/ bin / bash /unison / dir1 ssh: // 192.168.0.201 // rež2
Kaip įprasta, leiskite scenarijui vykdyti leidimus:
sudo chmod 755 / usr / bin / unisoncronDabar redaguokite „cronjob“ failą naudodami „crontab“:
sudo crontab -eJei pirmą kartą redaguojate „crontab“, tikiuosi, kad ne, pasirinkite redaktorių ir įveskite šią eilutę, kad sinchronizuotumėte su „Unison“ kas 1 valandą:
* / 60 * * * * / usr / bin / unisoncron &> / dev / nullTaip pat galite nustatyti, kad crontab veiktų tam tikru dienos metu. Jums taip pat nereikia naudoti scenarijaus, o crontab galite naudoti raw komandą.
Išvada
Ši pamoka parodė, kaip įdiegti ir nustatyti „Unison“ „Debian“ sistemoje, kad būtų galima sinchronizuoti failus ir katalogus.
Nors šis trumpasis vadovas gali padėti jums pradėti, galite sužinoti daugiau naudodami „Unison“ vadovo puslapius (vadovo puslapius) arba oficialius dokumentus naudodami toliau pateiktą šaltinį:
- https: // www.cis.upenn.edu / ~ bcpierce / unison /
- https: // www.cis.upenn.edu / ~ bcpierce / unison / download / releases / stabilus / unison-manual.HTML