Što je Unison?
Tehnologija Unison koju je razvio Benjamin C Pierce pod GPL licencom omogućava korisnicima da sinkroniziraju dvije pojedinačne instance datoteka na istom sustavu, ali na različitim diskovima ili dva druga sustava.
Unison vam omogućuje zadržavanje ažurirane i identične verzije iste datoteke ili direktorija. Može se koristiti u širokom spektru konteksta, poput SSH-a, omogućujući siguran prijenos podataka između uređaja ili direktorija.
Alat Unison višestruko je platformaran, što korisnicima omogućuje sinkronizaciju datoteka i direktorija između sustava koji pokreću isti ili različiti operativni sustavi. Na primjer, možete sinkronizirati datoteke s Linux sustava na BSD sustav. Zbog svojih sigurnosnih značajki, Unison sinkronizira datoteke i direktorije i primjenjuje prava vlasništva i dozvola na oba sustava.
Alat Unison razvijen je s naglaskom na sigurnost i može preživjeti neuspjehe kada se događaju prekidi između točaka sinkronizacije. Ako Unison otkrije sukobe datoteka i direktorija, izvještava o postojećim sukobima i omogućava korisnicima da odaberu koju će verziju datoteka primijeniti.
Unison može raditi s usporenim mrežama ili ih podržava, što ga čini vrlo učinkovitim alatom za korištenje propusnosti. Sinkronizira samo dijelove i direktorije koji su se promijenili, čime se sprječava veliko opterećenje i vrlo lako i brzo ažurira postupak sinkronizacije.
Unatoč primarnom kontekstu upotrebe, Unison je moćan alat koji se može modificirati kako bi stvorio širok spektar slučajeva korištenja.
Ovaj će vodič raspravljati o tome kako instalirati i postaviti sustav za sinkronizaciju datoteka Unison na Debianu 10.
Kako instalirati Unison na Debian 10
Unison je popularan alat; zbog toga je dostupan u službenim spremištima glavnih Linux distribucija.
Da biste instalirali verziju Unison naredbenog retka na Debian, počnite ažurirati sustav:
sudo apt-get update && sudo apt-get nadogradnjaZatim upotrijebite jednostavnu aplikaciju apt za naredbu za instalaciju alata.
sudo apt-get instalacija unison -yAko je na vašem sustavu instalirano radno okruženje i preferirate GUI verziju alata, instalirajte unison-gtk pomoću naredbe:
sudo apt-get instalirati unison-gtkBILJEŠKA: Obavezno instalirajte Unison na obje verzije sustava za koje želite sinkronizirati datoteke između njih. Radi kompatibilnosti i kako bi se minimalizirale šanse za pogreške, bolje je imati istu verziju Unisona u oba sustava.
Kako sinkronizirati datoteke s Unisonom
Unison nam pruža načine za sinkronizaciju datoteka i direktorija između lokalnih strojeva i udaljenih strojeva pomoću izravnih priključaka utičnice i SSH. Budući da sinkroniziramo dva poslužitelja Debiana, preskočit ćemo lokalnu računalnu sinkronizaciju.
Unison daljinska i daljinska sinkronizacija putem SSH-a
Da biste sinkronizirali datoteke i direktorije između udaljenih računala, morat ćete instalirati Unison u oba sustava, imati SSH pristup i sustavima i njihovim IP adresama.
Lokalni stroj također možete koristiti kao jedan poslužitelj, a udaljeni uređaj kao drugi poslužitelj.
- 192.168.0.200 - poslužitelj1
- 192.168.0.201 - poslužitelj2
Prvi korak je stvaranje privatnog i javnog ključa na udaljenom poslužitelju1.
ssh-keygen -t rsaGeneriranje javnog / privatnog rsa para ključeva.
Unesite datoteku u koju ćete spremiti ključ (/ home / csalem /.ssh / id_rsa):
Izrađen direktorij '/ home / csalem /.ssh '.
Unesite zaporku (prazno bez zaporke):
Ponovno unesite istu lozinku:
Vaša identifikacija je spremljena u / home / csalem /.ssh / id_rsa.
Vaš javni ključ je spremljen u / home / csalem /.ssh / id_rsa.pub.
Ključni otisak prsta je:
SHA256: 4p5YuEBEa5lrINzqPgwHRVhSS0TNlIIl70A0q2MFcS8 csalem @ Debian-PC
Slučajna umjetnička slika ključa je:
+---[RSA 2048]----+
| + / @ =… |
| = * O == |
| ++ OE . |
| + * o… |
| o + = . S |
|++. o . |
| oo ... o |
|.o . = . |
|… O o |
+----[SHA256]-----+
Brzo preskočite postupak generiranja ključa i spremite datoteku. Molimo nemojte dodavati zaporku jer ona može ometati nenadgledanu sinkronizaciju između poslužitelja.
Zatim kopirajte ključ s poslužitelja1 na poslužitelj2 pomoću naredbe:
ssh-copy-id 192.168.0.201Sada kada ste postavili SSH na oba sustava, možete pokrenuti Unison za sinkronizaciju datoteka i direktorija.
Isprobajmo upotrebu Unisona na oba poslužitelja izradom direktorija koji ćemo sinkronizirati na server1:
mkdir -p / dir1Na serveru2 izradite direktorij kao gore
mkdir -p / dir2Kao što je spomenuto, Unison poštuje korisnička dopuštenja. Stoga je najbolje promijeniti dozvole i vlasništvo u oba direktorija kako biste osigurali da oba direktorija imaju povlastice čitanja i pisanja.
Zatim dodajte sve podatke koje želite sinkronizirati između poslužitelja u dir1. Na primjer, dodajte nekoliko zip datoteka.
sudo mv ~ / Dokumenti.zip / dir1Imajući datoteke, želimo sinkronizirati u pravom direktoriju, pokrenite unison naredbu za sinkronizaciju s poslužitelja kao:
unison / dir1 ssh: // 192.168.0.201 // dir2Pri prvom pokretanju Unisona primit ćete upozorenje da postupak sinkronizacije može potrajati. Ako u direktorijima imate velike datoteke, to može potrajati, ali budući da ih koristimo samo u svrhu testiranja, trebalo bi biti relativno brzo.
Pritisnite Enter da biste započeli postupak sinkronizacije. Kada se postupak sinkronizacije dovrši, idite na server2, idite na dir2 i navedite sadržaj direktorija kao:
cd / dir2 && ls -la-rw-r - r-- 1 korijen korijena 436 5. siječnja 12:57 Dokumenti.zip
Izmjena Unison konfiguracije
U većini slučajeva ne želimo interaktivno sinkronizirati datoteke između ovih poslužitelja jer se postupak ponavlja i nije učinkovit. Konfiguracijsku datoteku Unison možemo urediti kako bismo omogućili automatsku sinkronizaciju datoteka.
Upotrijebite donju naredbu za uređivanje zadane konfiguracijske datoteke:
sudo vi ~ /.unison / default.prfU datoteku dodajte sljedeće retke:
auto = istinitošarža = istina
Gornji retci onemogućuju upite prilikom sinkronizacije datoteka, što automatizira postupak.
Postavljanje Unison Cronjoba
Jedna je sigurna stvar da su programeri vrlo neskloni raditi stvari ručno, posebno kada je moguće automatizirati, što je ovdje slučaj. Možemo postaviti cronjob za Unison da automatski vrši sinkronizaciju.
Na serveru1 stvorite jednostavnu bash skriptu za pokretanje unison naredbe kao:
sudo touch / usr / bin / unisoncron && sudo vi / usr / bin / unisoncronU datoteci započnite shebangom i dodajte naredbu unison sync:
#!/ bin / bash /unison / dir1 ssh: // 192.168.0.201 // dir2
Kao i obično, neka skripta izvršava dozvole:
sudo chmod 755 / usr / bin / unisoncronSada uredite svoju cronjob datoteku pomoću crontab:
sudo crontab -eAko ovo prvi put uređujete crontab - nadam se da nije - odaberite svog uređivača i unesite sljedeći redak za sinkronizaciju s Unisonom svakih 1 sat:
* / 60 * * * * / usr / bin / unisoncron &> / dev / nullTakođer možete postaviti crontab da se pokreće u određeno doba dana. Također ne trebate koristiti skriptu i možete koristiti sirovu naredbu u crontabu.
Zaključak
Ovaj vam je vodič pokazao kako instalirati i postaviti Unison na Debianov sustav za sinkronizaciju datoteka i direktorija.
Iako vam ovaj brzi vodič može pomoći da započnete, više možete saznati pomoću Unison man stranica (ručnih stranica) ili službene dokumentacije koristeći dolje navedeni resurs:
- https: // www.cis.upenn.edu / ~ bcpierce / unison /
- https: // www.cis.upenn.edu / ~ bcpierce / unison / download / releases / stable / unison-manual.html