Debian

Kuinka synkronoida tiedostoja palvelinten välillä Unisonin avulla

Kuinka synkronoida tiedostoja palvelinten välillä Unisonin avulla
Tämä opetusohjelma näyttää, kuinka Unison-tiedostojen synkronointityökalu asennetaan ja käytetään Debian-järjestelmissä. Unisonin avulla voit synkronoida tiedostot kahden eri levyn tai hakemiston välillä samassa järjestelmässä tai kahden muun järjestelmän kautta verkossa.

Mikä on Unison?

Benjamin C Piercen GPL-lisenssillä kehittämän Unison-tekniikan avulla käyttäjät voivat synkronoida kaksi yksittäistä tiedostotiedostoa samassa järjestelmässä, mutta eri levyt tai kaksi muuta järjestelmää.

Unisonin avulla voit pitää päivitetyn ja identtisen version samasta tiedostosta tai hakemistosta. Sitä voidaan käyttää monenlaisissa yhteyksissä, kuten SSH, mikä mahdollistaa turvallisen tiedonsiirron laitteiden tai hakemistojen välillä.

Unison-työkalu on alustojen välinen, jonka avulla käyttäjät voivat synkronoida tiedostot ja hakemistot samaa tai eri käyttöjärjestelmää käyttävien järjestelmien välillä. Voit esimerkiksi synkronoida tiedostoja Linux-järjestelmästä BSD-järjestelmään. Turvallisuusominaisuuksiensa takia Unison synkronoi tiedostot ja hakemistot sekä soveltaa omistus- ja käyttöoikeuksia molempiin järjestelmiin.

Unison-työkalu on kehitetty turvallisuutta silmällä pitäen ja se voi selviytyä epäonnistumisista, jos synkronointipisteiden välillä tapahtuu keskeytyksiä. Jos Unison havaitsee tiedosto- ja hakemistoristiriitoja, se ilmoittaa olemassa olevista ristiriidoista ja antaa käyttäjien valita sovellettavien tiedostojen version.

Unison voi toimia hitaiden verkkojen kanssa tai tukee niitä, joten se on erittäin tehokas työkalu kaistanleveyden käyttöön. Se synkronoi vain muuttuneet osat ja hakemistot estäen näin raskaan kuormituksen ja päivittää synkronointiprosessin helposti ja nopeasti.

Ensisijaisesta käyttökontekstistaan ​​huolimatta Unison on tehokas työkalu, jota voidaan muokata luomaan laaja valikoima käyttötapauksia.

Tässä opetusohjelmassa keskustellaan Unison-tiedostojen synkronointijärjestelmän asentamisesta ja asentamisesta Debian 10: een.

Kuinka Unison asennetaan Debian 10: een

Unison on suosittu työkalu; siksi se on saatavana suurten Linux-jakelujen virallisissa arkistoissa.

Asenna Unisonin komentoriviversio Debianiin aloittamalla järjestelmän päivitys:

sudo apt-get update && sudo apt-get päivitys

Asenna sitten työkalu yksinkertaisen apt to -komennon avulla.

sudo apt-get install unison -y

Jos järjestelmään on asennettu työpöytäympäristö ja haluat mieluummin työkalun GUI-version, asenna unison-gtk komennolla:

sudo apt-get install unison-gtk

MERKINTÄ: Varmista, että asennat Unison-järjestelmän molempiin versioihin, jotka haluat synkronoida tiedostojen välillä. Yhteensopivuuden ja virheiden mahdollisuuden minimoimiseksi on parempi, että molemmissa järjestelmissä on sama Unison-versio.

Kuinka synkronoida tiedostoja Unisonin kanssa

Unison tarjoaa meille tapoja synkronoida tiedostot ja hakemistot paikallisten koneiden ja etäkoneiden välillä käyttämällä suoria pistorasioiden yhteyksiä ja SSH: tä. Koska synkronoimme kahden Debian-palvelimen välillä, ohitamme paikallisen koneen synkronoinnin.

Unison Remote and Remote Sync SSH: n kautta

Jos haluat synkronoida tiedostoja ja hakemistoja etäkoneiden välillä, Unison on asennettava molempiin järjestelmiin, sinulla on oltava SSH-yhteys sekä järjestelmiin että niiden IP-osoitteisiin.

Voit myös käyttää paikallista laitettasi yhtenä palvelimena ja etälaitetta toisena palvelimena.

Ensimmäinen vaihe on luoda yksityinen ja julkinen avain etäpalvelimeen1.

ssh-keygen -t rsa
Luodaan julkinen / yksityinen rsa-avainpari.
Kirjoita tiedosto, johon avain tallennetaan (/ home / csalem /.ssh / id_rsa):
Luotu hakemisto '/ home / csalem /.ssh '.
Kirjoita salasana (tyhjä, jos salasanaa ei ole):
Kirjoita sama salasana uudelleen:
Tunnistuksesi on tallennettu kansioon / home / csalem /.ssh / id_rsa.
Julkinen avain on tallennettu kansioon / home / csalem /.ssh / id_rsa.pub.
Avaimen sormenjälki on:
SHA256: 4p5YuEBEa5lrINzqPgwHRVhSS0TNlIIl70A0q2MFcS8 csalem @ Debian-PC
Avaimen satunnainen taidekuva on:
+---[RSA 2048]----+
| + / @ =… |
| = * O == |
| ++ OE . |
| + * o… |
| o + = . S |
|++. o . |
| oo… o |
|.o . = . |
|… O o |
+----[SHA256]-----+

Ohita avaimen luontiprosessi nopeasti ja tallenna tiedosto. Älä lisää salasanaa, koska se voi estää valvomatonta synkronointia palvelimien välillä.

Kopioi seuraavaksi avain palvelimelta palvelimelle2 komennolla:

ssh-copy-id 192.168.0.201

Nyt kun sinulla on SSH-asennus molemmissa järjestelmissä, voit aloittaa Unisonin tiedostojen ja hakemistojen synkronoimiseksi.

Testataan Unisonin käyttö molemmilla palvelimilla luomalla hakemisto, jonka synkronoidaan palvelimella1:

mkdir -p / dir1

Luo palvelimella 2 hakemisto kuten yllä

mkdir -p / dir2

Kuten mainittiin, Unison kunnioittaa käyttäjien oikeuksia. Siksi on parasta muuttaa molempien hakemistojen käyttöoikeuksia ja omistajuutta varmistaaksesi, että molemmilla hakemistoilla on luku- ja kirjoitusoikeudet.

Lisää seuraavaksi kaikki tiedot, jotka haluat synkronoida palvelimien välillä dir1: ssä. Lisää esimerkiksi muutama zip-tiedosto.

sudo mv ~ / Asiakirjat.zip / dir1

Ottaa tiedostot, haluamme synkronoida oikeaan hakemistoon, suorita unison-komento synkronoida palvelimelta seuraavasti:

unison / dir1 ssh: // 192.168.0.201 // suora2

Ensimmäisellä Unison-käynnistyksellä saat varoituksen, että synkronointi voi viedä jonkin aikaa. Jos hakemistoissa on suuria tiedostoja, tämä voi kestää jonkin aikaa, mutta koska käytämme sitä vain testaustarkoituksiin, sen pitäisi olla suhteellisen nopeaa.

Aloita synkronointi painamalla Enter-näppäintä. Kun synkronointiprosessi on valmis, siirry palvelimelle2, siirry hakemistoon dir2 ja luetteloi hakemiston sisältö seuraavasti:

cd / dir2 && ls -la
-rw-r - r-- 1 juurihakemisto 436 5. tammikuuta 12:57 Asiakirjat.postinumero

Unison-kokoonpanon muokkaaminen

Useimmissa tapauksissa emme halua synkronoida tiedostoja näiden palvelimien välillä vuorovaikutteisesti, koska prosessi on toistuva ja tehoton. Voimme muokata Unison-määritystiedostoa automaattisten synkronointitiedostojen sallimiseksi.

Muokkaa oletusasetustiedostoa alla olevan komennon avulla:

sudo vi ~ /.yhtenäinen / oletus.prf

Lisää tiedostoon seuraavat rivit:

auto = tosi
erä = tosi

Yllä olevat rivit poistavat kehotteet käytöstä tiedostoja synkronoitaessa ja prosessia automatisoitaessa.

Perustamalla Unison Cronjob

Yksi varma asia on, että ohjelmoijat ovat hyvin vastenmielisiä tekemällä asioita manuaalisesti, varsinkin kun on mahdollista automatisoida, mikä on tässä tapauksessa. Voimme asettaa cronjobin Unisonille suorittamaan synkronointi automaattisesti.

Luo palvelimessa1 yksinkertainen bash-komentosarja suorittamaan unison-komento seuraavasti:

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

Aloita tiedostossa shebang ja lisää unison sync -komento:

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

Tee tavallista, että komentosarja suorittaa käyttöoikeudet:

sudo chmod 755 / usr / bin / unisoncron

Muokkaa nyt cronjob-tiedostoa crontabilla:

sudo crontab -e

Jos muokkaat crontabia ensimmäistä kertaa - toivon, että se ei ole - valitse editori ja kirjoita seuraava rivi synkronoitavaksi Unisonin kanssa tunnin välein:

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

Voit myös asettaa crontabin toimimaan tiettyinä vuorokaudenaikoina. Sinun ei myöskään tarvitse käyttää komentosarjaa, ja voit käyttää raakakomentoa crontabissa.

Johtopäätös

Tämä opetusohjelma osoitti, kuinka Unison asennetaan ja asennetaan Debian-järjestelmään tiedostojen ja hakemistojen synkronointia varten.

Vaikka tämä pikaopas voi auttaa sinua pääsemään alkuun, voit oppia lisää käyttämällä Unisonin man-sivuja (manuaaliset sivut) tai virallista dokumentaatiota alla olevan resurssin avulla:

Battle for Wesnoth Tutorial
The Battle for Wesnoth is one of the most popular open source strategy games that you can play at this time. Not only has this game been in developmen...
0 A.D. Tutorial
Out of the many strategy games out there, 0 A.D. manages to stand out as a comprehensive title and a very deep, tactical game despite being open sourc...
Unity3D Tutorial
Introduction to Unity 3D Unity 3D is a powerful game development engine. It is cross platform that is it allows you to create games for mobile, web, d...