Kas ir Unisons?
Unison tehnoloģija, kuru Benjamin C Pierce izstrādājusi saskaņā ar GPL licenci, ļauj lietotājiem vienā sistēmā sinhronizēt divus atsevišķus failu gadījumus, bet dažādus diskus vai divas citas sistēmas.
Unison ļauj saglabāt atjauninātu un identisku tā paša faila vai direktorija versiju. To var izmantot visdažādākajos kontekstos, piemēram, SSH, kas ļauj droši pārsūtīt datus starp ierīcēm vai direktorijiem.
Rīks Unison ir starpplatforms, ļaujot lietotājiem sinhronizēt failus un direktorijus starp sistēmām, kurās darbojas viena vai dažādas operētājsistēmas. Piemēram, jūs varat sinhronizēt failus no Linux sistēmas uz BSD sistēmu. Drošības funkciju dēļ Unison sinhronizē failus un direktorijus un abās sistēmās piemēro īpašumtiesības un atļaujas.
Rīks Unison ir izstrādāts, ņemot vērā drošību, un tas var pārdzīvot neveiksmes, ja starp sinhronizācijas punktiem notiek pārtraukumi. Ja Unison atklāj failu un direktoriju konfliktus, tas ziņo par esošajiem konfliktiem un ļauj lietotājiem izvēlēties, kurai failu versijai jāpiemēro.
Unison var strādāt ar vai atbalsta lēnus tīklus, padarot to par ļoti efektīvu joslas platuma izmantošanas rīku. Tas sinhronizē tikai mainītās daļas un direktorijus, tādējādi novēršot lielu slodzi un ļoti viegli un ātri atjauninot sinhronizācijas procesu.
Neskatoties uz primāro lietošanas kontekstu, Unison ir spēcīgs rīks, kuru var pārveidot, lai izveidotu plašu lietojuma gadījumu klāstu.
Šajā apmācībā tiks apspriests, kā Debison 10 instalēt un iestatīt Unison failu sinhronizācijas sistēmu.
Kā instalēt Unison uz Debian 10
Unison ir populārs rīks; tāpēc tas ir pieejams galveno Linux izplatījumu oficiālajās krātuvēs.
Lai Debian instalētu komandrindas Unison versiju, sāciet sistēmas atjaunināšanu:
sudo apt-get update && sudo apt-get jauninājumsPēc tam izmantojiet vienkāršo komandu apt to, lai instalētu rīku.
sudo apt-get instalēt unison -yJa jūsu sistēmā ir instalēta darbvirsmas vide un vēlaties rīka GUI versiju, instalējiet unison-gtk, izmantojot komandu:
sudo apt-get instalēt unison-gtkPIEZĪME: Pārliecinieties, vai esat instalējis Unison abās to sistēmu versijās, kurās vēlaties sinhronizēt failus starp tām. Lai nodrošinātu saderību un samazinātu kļūdu iespējamību, abās sistēmās labāk ir izmantot to pašu Unison versiju.
Kā sinhronizēt failus ar
Unison mums piedāvā veidus, kā sinhronizēt failus un direktorijus starp vietējām mašīnām un attālajām mašīnām, izmantojot tiešos kontaktligzdas savienojumus un SSH. Tā kā mēs veicam sinhronizāciju starp diviem Debian serveriem, mēs izlaidīsim vietējās mašīnas sinhronizāciju.
Unison attālā un attālā sinhronizācija, izmantojot SSH
Lai sinhronizētu failus un direktorijus starp attālajām mašīnām, abās sistēmās būs jāinstalē Unison, jābūt SSH piekļuvei abām sistēmām un to IP adresēm.
Vietējo mašīnu var izmantot arī kā vienu serveri un attālo ierīci kā otru serveri.
- 192.168. lpp.0.200 - serveris
- 192.168. lpp.0.201 - serveris2
Vispirms ir jāizveido privātā un publiskā atslēga uz attālā servera1.
ssh-keygen -t rsaĢenerē publisko / privāto rsa atslēgu pāri.
Ievadiet failu, kurā saglabāt atslēgu (/ home / csalem /.ssh / id_rsa):
Izveidots direktorijs '/ home / csalem /.ssh '.
Ievadiet ieejas frāzi (tukša, ja nav ieejas frāzes):
Vēlreiz ievadiet to pašu ieejas frāzi:
Jūsu identifikācija ir saglabāta mapē / home / csalem /.ssh / id_rsa.
Jūsu publiskā atslēga ir saglabāta mapē / home / csalem /.ssh / id_rsa.krogs.
Galvenais pirkstu nospiedums ir:
SHA256: 4p5YuEBEa5lrINzqPgwHRVhSS0TNlIIl70A0q2MFcS8 csalem @ Debian-PC
Galvenais nejaušais mākslas attēls ir:
+---[RSA 2048]----+
| + / @ =… |
| = * O == |
| ++ OE . |
| + * o ... |
| o + = . S |
|++. o . |
| oo… o |
|.o . = . |
|… O o |
+----[SHA256]-----+
Ātri izlaidiet atslēgu ģenerēšanas procesu un saglabājiet failu. Lūdzu, nepievienojiet ieejas frāzi, jo tā var kavēt neuzraudzītu serveru sinhronizāciju.
Pēc tam kopējiet atslēgu no servera1 uz serveri2, izmantojot komandu:
ssh-copy-id 192.168. lpp.0.201Tagad, kad abās sistēmās esat iestatījis SSH, varat sākt Unison, lai sinhronizētu failus un direktorijus.
Pārbaudīsim Unison lietošanu abos serveros, izveidojot direktoriju, kuru sinhronizēsim serverī1:
mkdir -p / dir1Server2 izveidojiet direktoriju, kā norādīts iepriekš
mkdir -p / dir2Kā jau minēts, Unison ievēro lietotāju atļaujas. Tāpēc vislabāk ir mainīt atļaujas un īpašumtiesības abos direktorijos, lai nodrošinātu, ka abos direktorijos ir lasīšanas un rakstīšanas tiesības.
Pēc tam pievienojiet visus datus, kurus vēlaties sinhronizēt starp direktoriem dir1. Piemēram, pievienojiet dažus zip failus.
sudo mv ~ / Dokumenti.zip / dir1Ņemot failus, mēs vēlamies sinhronizēt pareizajā direktorijā, palaist komandu unison, lai sinhronizētu no pirmā servera kā:
unison / dir1 ssh: // 192.168. lpp.0.201 // rež2Pēc pirmās Unison palaišanas jūs saņemsit brīdinājumu, ka sinhronizācijas process var aizņemt kādu laiku. Ja direktorijos ir lieli faili, tas var aizņemt kādu laiku, taču, tā kā mēs to izmantojam tikai testēšanas vajadzībām, tam jābūt samērā ātram.
Nospiediet Enter, lai sāktu sinhronizācijas procesu. Kad sinhronizācijas process ir pabeigts, dodieties uz serveri2, dodieties uz direktoriju2 un direktorija saturu uzskaitiet šādi:
cd / dir2 && ls -la-rw-r - r-- 1 saknes sakne 436 5. janvāris 12:57 Dokumenti.zip
Unison konfigurācijas modificēšana
Vairumā gadījumu mēs nevēlamies interaktīvi sinhronizēt failus starp šiem serveriem, jo process ir atkārtots un neefektīvs. Mēs varam rediģēt Unison konfigurācijas failu, lai atļautu automātiskas sinhronizācijas failus.
Izmantojiet zemāk esošo komandu, lai rediģētu noklusējuma konfigurācijas failu:
sudo vi ~ /.unison / noklusējums.prfFailā pievienojiet šādas rindas:
auto = patiesspartija = taisnība
Iepriekš minētās rindas atspējo uzvednes, sinhronizējot failus, automatizējot procesu.
Unison Cronjob iestatīšana
Viena droša lieta ir tā, ka programmētāji ļoti nevēlas darīt lietas manuāli, it īpaši, ja ir iespējams automatizēt, kā tas ir šeit. Mēs varam iestatīt cronjob, lai Unison automātiski veiktu sinhronizāciju.
Server1 izveidojiet vienkāršu bash skriptu, lai palaistu unison komandu kā:
sudo touch / usr / bin / unisoncron && sudo vi / usr / bin / unisoncronFailā sāciet ar shebang un pievienojiet komandu unison sync:
#!/ bin / bash /unison / dir1 ssh: // 192.168. lpp.0.201 // rež2
Kā parasti, ļaujiet skriptam izpildīt atļaujas:
sudo chmod 755 / usr / bin / unisoncronTagad rediģējiet cronjob failu ar crontab:
sudo crontab -eJa jūs pirmo reizi rediģējat crontab - es ceru, ka tas nav - izvēlieties redaktoru un ievadiet šo rindiņu, lai sinhronizētu ar Unison ik pēc 1 stundas:
* / 60 * * * * / usr / bin / unisoncron &> / dev / nullVarat arī iestatīt crontab, lai tas darbotos noteiktā dienas laikā. Jums arī nav jāizmanto skripts, un crontab varat izmantot komandu raw.
Secinājums
Šajā apmācībā tika parādīts, kā Debison sistēmā instalēt un iestatīt Unison failu un direktoriju sinhronizācijai.
Lai gan šī īsā rokasgrāmata var palīdzēt jums sākt darbu, varat uzzināt vairāk, izmantojot Unison rokasgrāmatas lapas (rokasgrāmatas lapas) vai oficiālo dokumentāciju, izmantojot tālāk sniegto resursu:
- https: // www.cis.upenn.edu / ~ bcpierce / unison /
- https: // www.cis.upenn.edu / ~ bcpierce / unison / download / releases / stabil / unison-manual.html