Debian

Kako uporabiti Unison za sinhronizacijo datotek med strežniki

Kako uporabiti Unison za sinhronizacijo datotek med strežniki
Ta vadnica vam bo pokazala, kako nastaviti in uporabiti orodje za sinhronizacijo datotek Unison v sistemih Debian. Z uporabo Unisona lahko prek omrežja sinhronizirate datoteke med dvema različnima diskoma ali imenikom v istem sistemu ali med dvema sistemoma.

Kaj je Unison?

Tehnologija Unison, ki jo je razvil Benjamin C Pierce pod licenco GPL, omogoča uporabnikom sinhronizacijo dveh primerkov posameznih datotek v istem sistemu, vendar na različnih diskih ali dveh drugih sistemih.

Unison vam omogoča, da obdržite posodobljeno in enako različico iste datoteke ali imenika. Uporaben je v najrazličnejših kontekstih, kot je SSH, kar omogoča varen prenos podatkov med napravami ali imeniki.

Orodje Unison je medplatformno in uporabnikom omogoča sinhronizacijo datotek in imenikov med sistemi z istim ali različnimi operacijskimi sistemi. Datoteke lahko na primer sinhronizirate iz sistema Linux s sistemom BSD. Zaradi svojih varnostnih funkcij Unison sinhronizira datoteke in imenike ter v obeh sistemih uveljavlja pravice lastništva in dovoljenj.

Orodje Unison je razvito z mislijo na varnost in lahko preživi napake, kadar pride do prekinitev med točkami sinhronizacije. Če Unison zazna konflikte datotek in imenikov, sporoči obstoječe konflikte in uporabnikom omogoči, da izberejo, katero različico datotek naj uporabi.

Unison lahko deluje s počasnimi omrežji ali jih podpira, zaradi česar je zelo učinkovito orodje za uporabo pasovne širine. Sinhronizira le dele in imenike, ki so se spremenili, s čimer preprečuje veliko obremenitev in zelo enostavno in hitro posodablja postopek sinhronizacije.

Kljub primarnemu kontekstu uporabe je Unison močno orodje, ki ga je mogoče spremeniti tako, da ustvari širok spekter primerov uporabe.

Ta vadnica bo razpravljala o namestitvi in ​​nastavitvi sistema za sinhronizacijo datotek Unison v Debianu 10.

Kako namestiti Unison na Debian 10

Unison je priljubljeno orodje; zaradi tega je na voljo v uradnih skladiščih glavnih distribucij Linuxa.

Če želite v Debian namestiti različico ukazne vrstice Unison, začnite posodabljati sistem:

posodobitev sudo apt-get && nadgradnja sudo apt-get

Nato uporabite preprost apt za ukaz za namestitev orodja.

sudo apt-get install unison -y

Če je v vašem sistemu nameščeno namizno okolje in imate raje GUI različico orodja, namestite unison-gtk z ukazom:

sudo apt-get namestite unison-gtk

OPOMBA: Prepričajte se, da ste namestili Unison v obe različici sistemov, za katere želite sinhronizirati datoteke med njimi. Za združljivost in zmanjšanje možnosti napak je bolje, da je v obeh sistemih enaka različica Unison.

Kako sinhronizirati datoteke z Unison

Unison nam ponuja načine za sinhronizacijo datotek in imenikov med lokalnimi in oddaljenimi stroji z neposrednimi vtičnicami in SSH. Ker sinhroniziramo dva strežnika Debian, bomo preskočili lokalno strojno sinhronizacijo.

Unison Remote in Remote Sync prek SSH

Za sinhronizacijo datotek in imenikov med oddaljenimi računalniki boste morali imeti Unison nameščen v obeh sistemih, imeti SSH dostop do obeh sistemov in njihovih naslovov IP.

Lokalni računalnik lahko uporabite tudi kot en strežnik, oddaljeno napravo pa kot drugi strežnik.

Prvi korak je ustvariti zasebni in javni ključ na oddaljenem strežniku1.

ssh-keygen -t rsa
Ustvarjanje javnega / zasebnega para ključev rsa.
Vnesite datoteko, v katero želite shraniti ključ (/ home / csalem /.ssh / id_rsa):
Ustvarjen imenik '/ home / csalem /.ssh '.
Vnesite geslo (prazno, če ni gesla):
Ponovno vnesite isto geslo:
Vaša identifikacija je bila shranjena v / home / csalem /.ssh / id_rsa.
Vaš javni ključ je bil shranjen v / home / csalem /.ssh / id_rsa.pub.
Ključni prstni odtis je:
SHA256: 4p5YuEBEa5lrINzqPgwHRVhSS0TNlIIl70A0q2MFcS8 csalem @ Debian-PC
Naključna umetniška slika ključa je:
+---[RSA 2048]----+
| + / @ =… |
| = * O == |
| ++ OE . |
| + * o… |
| o + = . S |
|++. o . |
| oo ... o |
|.o . = . |
|… O o |
+----[SHA256]-----+

Hitro preskočite postopek ustvarjanja ključev in shranite datoteko. Ne dodajte gesla, ker lahko ovira nenadzorovano sinhronizacijo med strežniki.

Nato kopirajte ključ s strežnika1 na strežnik2 z ukazom:

ssh-copy-id 192.168.0.201

Zdaj, ko ste v obeh sistemih nastavili SSH, lahko zaženete Unison za sinhronizacijo datotek in imenikov.

Preizkusimo uporabo Unisona na obeh strežnikih z ustvarjanjem imenika, ki ga bomo sinhronizirali na server1:

mkdir -p / dir1

Na strežniku2 ustvarite imenik, kot je opisano zgoraj

mkdir -p / dir2

Kot smo že omenili, Unison spoštuje uporabniška dovoljenja. Zato je najbolje, da spremenite dovoljenja in lastništvo v obeh imenikih, da zagotovite, da imata oba imenika pravice branja in pisanja.

Nato dodajte vse podatke, ki jih želite sinhronizirati med strežniki v dir1. Na primer, dodajte nekaj datotek zip.

sudo mv ~ / Dokumenti.zip / dir1

Ob datotekah želimo sinhronizirati v pravem imeniku, zaženite unison ukaz za sinhronizacijo s strežnika kot:

unison / dir1 ssh: // 192.168.0.201 // dir2

Ob prvem zagonu Unisona boste prejeli opozorilo, da lahko postopek sinhronizacije traja nekaj časa. Če imate v imenikih velike datoteke, lahko to traja nekaj časa, a ker jih uporabljamo samo za preskušanje, bi moralo biti razmeroma hitro.

Pritisnite Enter, da začnete postopek sinhronizacije. Ko je postopek sinhronizacije končan, pojdite na server2, pojdite na dir2 in vsebino imenika navedite kot:

cd / dir2 && ls -la
-rw-r - r-- 1 korenski koren 436 5. januar 12:57 Dokumenti.zadrgo

Spreminjanje konfiguracije Unison

V večini primerov ne želimo interaktivno sinhronizirati datotek med temi strežniki, saj je postopek ponavljajoč se in neučinkovit. Konfiguracijsko datoteko Unison lahko uredimo, da omogočimo samodejno sinhronizacijo datotek.

Uporabite spodnji ukaz za urejanje privzete konfiguracijske datoteke:

sudo vi ~ /.unison / default.prf

V datoteko dodajte naslednje vrstice:

samodejno = res
serija = res

Zgornje vrstice onemogočijo pozive pri sinhronizaciji datotek in avtomatizirajo postopek.

Nastavitev Unison Cronjob

Zagotovo je, da se programerji zelo nagibajo k ročnemu početju, zlasti kadar je mogoče avtomatizirati, kar je v tem primeru. Za Unison lahko nastavimo cronjob za samodejno sinhronizacijo.

V strežniku1 ustvarite preprost skript bash za zagon ukaza unison kot:

sudo touch / usr / bin / unisoncron && sudo vi / usr / bin / unisoncron

V datoteki začnite s shebangom in dodajte ukaz unison sync:

#!/ bin / bash /
unison / dir1 ssh: // 192.168.0.201 // dir2

Kot običajno, naj skript izvaja dovoljenja:

sudo chmod 755 / usr / bin / unisoncron

Zdaj uredite svojo datoteko cronjob s crontab:

sudo crontab -e

Če prvič urejate crontab - upam, da ni - izberite svojega urejevalnika in vnesite naslednjo vrstico za sinhronizacijo z Unisonom vsako 1 uro:

* / 60 * * * * / usr / bin / unisoncron &> / dev / null

Crontab lahko nastavite tudi tako, da se izvaja ob določenih urah dneva. Prav tako vam ni treba uporabljati skripta in lahko uporabite ukaz raw v crontabu.

Zaključek

Ta vadnica vam je pokazala, kako namestiti in nastaviti Unison v sistem Debian za sinhronizacijo datotek in imenikov.

Čeprav vam lahko ta hitri vodnik pomaga pri začetku, lahko več izveste na straneh s priročniki Unison (strani z navodili) ali v uradni dokumentaciji z uporabo spodaj navedenih virov:

Vadnica za OpenTTD
OpenTTD je ena izmed najbolj priljubljenih poslovnih simulacijskih iger. V tej igri morate ustvariti čudovit prevozniški posel. Vendar boste začeli na...
SuperTuxKart za Linux
SuperTuxKart je odličen naslov, zasnovan tako, da vam brezplačno ponuja izkušnjo Mario Kart v vašem sistemu Linux. Igrati je precej zahtevno in zabavn...
Vadnica za bitko za Wesnoth
Bitka za Wesnoth je ena izmed najbolj priljubljenih odprtokodnih strateških iger, ki jih lahko trenutno igrate. Ne samo, da se ta igra razvija že zelo...