Vydanie otvoreného P2P systému synchronizácie súborov Syncthing 2.0

Bol predstavený release systému automatickej synchronizácie súborov Syncthing 2.0, v ktorom sa synchronizované dáta neukladajú do cloudových úložísk, ale priamo replikujú medzi systémami používateľa pri ich súčasnej prítomnosti online, pričom sa používa vyvíjaný projektom protokol BEP (Block Exchange Protocol). Kód Syncthing je napísaný v jazyku Go a je šírený pod voľnou licenciou MPL. Hotové zostavy sú pripravené pre Linux, Windows, macOS a FreeBSD.

Okrem riešenia úloh synchronizácie dát medzi viacerými zariadeniami jedného používateľa, pomocou Syncthing je možné vytvoriť veľké decentralizované siete na uchovávanie zdieľaných dát, ktoré sú rozdelené medzi systémy účastníkov. Poskytujú sa prostriedky na kontrolu prístupu a vytváranie výnimiek pre synchronizáciu. Je možné určiť hostiteľov, ktorí budú len prijímať dáta, teda zmeny dát na týchto hostiteľoch sa nebudú odrážať na inštanciách dát uchovávaných na iných systémoch. Podporuje sa niekoľko režimov verzionovania súborov, pri ktorých sa zachovávajú predchádzajúce verzie zmenených dát.

Pri synchronizácii sa súbor logicky rozdeľuje na bloky, ktoré sú nedeliteľné pri prenose dát medzi systémami používateľa. Pri synchronizácii na nové zariadenie, v prípade prítomnosti identických blokov na viacerých zariadeniach, sa kopírovanie blokov vykonáva z rôznych uzlov, podobne ako pri prevádzke systému BitTorrent. Čím viac zariadení sa zúčastňuje synchronizácie, tým rýchlejšie bude prebiehať replikácia nových dát vďaka paralelizácii. V procese synchronizácie zmenených súborov sa cez sieť prenášajú iba zmenené bloky dát, a pri premenovaní alebo zmene prístupových práv sa synchronizujú iba metadáta.

Kanály prenosu dát sa vytvárajú pomocou TLS, všetky uzly sa navzájom autentifikujú podľa certifikátov a identifikátorov zariadení, na kontrolu integrity sa používa SHA-256. Na určenie uzlov synchronizácie v lokálnej sieti môže byť použitý protokol UPnP, pri ktorom nie je potrebný ručný vstup. IP adresy sú zariadení. Na nastavenie systému a monitorovanie je k dispozícii vstavané webové rozhranie, CLI klient a GUI založené na knižnici GTK, v ktorom sú navyše poskytnuté prostriedky na správu synchronizačných uzlov a repozitárov.

Kľúčové zmeny v novej vetve:

  • Backend uchovávania bol preladený z DB LevelDB na SQLite. Migrácia údajov sa vykonáva automaticky pri prvom spustení po aktualizácii. Predpokladá sa, že použitie SQLite zjednoduší údržbu a analýzu údajov, ako aj zníži počet chýb.
  • Zmenený formát vedenia protokolov, ktoré sa teraz vytvárajú v štruktúrovanom formáte (správa + parametre v formáte kľúč-hodnota). Pridaná nová úroveň protokolov — WARNING, ktorá nie je tak podrobná ako INFO, ale pokrýva viac informácií v porovnaní s úrovňou ERROR. Poskytla sa možnosť priraďovať rôzne úrovne protokolov rôznym balíkom.
  • Skončilo sa večné uchovávanie odstránených prvkov v DB, podobné prvky sa teraz odstraňujú po 6 mesiacoch (čas možno zmeniť cez možnosť „—db-delete-retention-interval).
  • Vylepšený kód na analýzu volieb príkazového riadku a skončila podpora zastaraného formátu s jedným pomlčkou (t.j. namiesto „-home“ by sa malo uvádzať „—home“). Pre niektoré možnosti boli premenované alebo prevedené do podpríkazov.
  • Prestaňte vytvárať predvolený adresár pri prvom spustení.
  • Bola zapojená inštalácia niekoľkých sieťových pripojení medzi zariadeniami používajúcimi Syncthing 2.x. Predvolene sú vytvorené tri pripojenia — jedno pre metadáta indexu a dve na výmenu údajov.
  • Zmenený algoritmus na riešenie konfliktov pri odstraňovaní súborov.
  • V dôsledku ťažkostí s krížovým kompilovaním SQLite bola zastavená kompilácia hotových spustiteľných súborov pre platformy dragonfly/amd64, illumos/amd64, solaris/amd64, linux/ppc64, netbsd/*, openbsd/386, openbsd/arm a windows/arm.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster