Byl uveden nový verze systému automatické synchronizace souborů Syncthing 1.16, ve které se synchronizovaná data neukládají do cloudových úložišť, ale přímo se replikují mezi systémy uživatelů při jejich současné online dostupnosti, využívající protokol BEP (Block Exchange Protocol) vyvinutý projektem. Kód Syncthing je napsán v jazyce Go a je distribuován pod otevřenou licencí MPL. Hotové sestavení je připraveno pro Linux, Android, Windows, macOS, FreeBSD, Dragonfly BSD, NetBSD, OpenBSD a Solaris.
Kromě řešení úloh synchronizace dat mezi několika zařízeními jednoho uživatele, je pomocí Syncthing možné vytváření velkých decentralizovaných sítí pro ukládání sdílených dat, která jsou distribuována mezi systémy účastníků. Jsou poskytovány flexibilní prostředky pro kontrolu přístupu a vytváření výjimek pro synchronizaci. Je možné definovat hostitele, kteří budou pouze přijímat data, tzn. změny dat na těchto hostitelích nebudou odráženy v instancích dat uložených na jiných systémech. Podporuje se několik režimů versionování souborů, při kterých se uchovávají předchozí verze upravených dat.
Při synchronizaci je soubor logicky rozdělen na bloky, které jsou nedělitelnou částí při přenosu dat mezi systémy uživatele. Při synchronizaci na nové zařízení, pokud existují identické bloky na několika zařízeních, kopírování bloků se provádí z různých uzlů, podobně jako při fungování systému BitTorrent. Čím více zařízení se účastní synchronizace, tím rychleji probíhá replikace nových dat díky paralelizaci. V průběhu synchronizace změněných souborů se přes síť přenášejí pouze změněné bloky dat, a při přejmenování nebo změně přístupových práv se synchronizují pouze metadata.
Kanály pro přenos dat jsou vytvářeny pomocí TLS, všechny uzly se vzájemně autentizují na základě certifikátů a identifikátorů zařízení, pro kontrolu integrity se používá SHA-256. K určení uzlů synchronizace v lokální síti může být použit protokol UPnP, u kterého není třeba ruční zadání. IP adress synchronizovaných zařízení. Pro nastavení systému a monitorování je k dispozici vestavěné webové rozhraní, CLI klient a GUI Syncthing-GTK, ve kterém jsou navíc poskytovány prostředky pro řízení synchronizačních uzlů a repozitářů. Pro usnadnění hledání uzlů se Syncthing vyvíjí server koordinace objevování uzlů.
Nová verze obsahuje experimentální podporu pro šifrování souborů, což umožňuje používat Syncthing s servery nedůvěryhodné, například pro synchronizaci svých dat nejen se svými zařízeními, ale také s externími servery, které nejsou pod kontrolou uživatele. Navíc v nové verzi byl implementován dialog pro žádost o potvrzení před zrušením změn nebo přepsáním adresáře. Byly vyřešeny problémy s nadměrnou spotřebou CPU v podmínkách s animovanými ukazateli průběhu operací. Následně bylo okamžitě vydáno aktualizace 1.16.1, ve které byla odstraněna chyba v balíčku pro Debian.


Zdroj: opennet.ru
