From Wikipedia, the free encyclopedia
Syncthing és una aplicació gratuïta de sincronització de fitxers d'igual a punt de codi obert disponible per a Windows, macOS, Linux, Android, Solaris, Darwin i BSD.[1] Pot sincronitzar fitxers entre dispositius d'una xarxa local o entre dispositius remots a través d'Internet. La seguretat de les dades i la seguretat de les dades estan integrades en el disseny del programari.
| |
Tipus | file synchronisation software (en) |
---|---|
Versió inicial | 15 desembre 2013 |
Versió estable | |
Llicència | Llicència pública de Mozilla, versió 2.0 GNU GPL 3.0 o posterior llicència Expat |
Disponible en | |
Característiques tècniques | |
Sistema operatiu | GNU/Linux, Android, Microsoft Windows, macOS, BSD, Solaris, FreeBSD, NetBSD, OpenBSD i DragonFly BSD |
Plataforma | x86, x86_64, ARM i Android |
Dispositiu d'entrada | pantalla tàctil |
Escrit en | Go |
Equip | |
Distribuidor | F-Droid i Google Play |
Més informació | |
Lloc web | syncthing.net (anglès) |
Seguiment d'errors | Seguiment d'errors |
Free Software Directory | Syncthing |
Id. Framalibre | syncthing |
| |
La sincronització està escrita a Go i implementa el seu propi protocol d'intercanvi de blocs igualment gratuït.[2]
La sincronització és un model de núvol BYO on els usuaris proporcionen el maquinari en què s'executa el programari. Admet IPv6 i, per als que estan en xarxes IPv4, s'ofereixen perforacions i retransmissions NAT. Els dispositius que es connecten entre ells requereixen una aprovació explícita (tret que s'utilitzi la funció Introductor) que augmenta la seguretat de la malla. Totes les dades, tant si es transfereixen directament entre dispositius com mitjançant relés, es xifren mitjançant TLS.[3][4]
Els conflictes es gestionen amb el canvi de nom del fitxer antic amb un sufix de "conflicte de sincronització" (juntament amb el segell de data i hora), que permet a l'usuari decidir com gestionar dos o més fitxers del mateix nom que s'han canviat entre sincronització.[5] Els embolcalls de la GUI poden utilitzar aquests fitxers per presentar a l'usuari un mètode per resoldre conflictes sense haver de recórrer a la gestió manual de fitxers.
La sincronització eficient s'aconsegueix mitjançant la compressió de metadades o totes les dades de transferència,[6] la reutilització de blocs[7] i l'exploració lleugera[8] dels fitxers modificats, un cop s'ha calculat i desat un hash complet. Syncthing ofereix tipus de carpetes només d'enviament i de recepció[9] on no es processen les actualitzacions de dispositius remots, diversos tipus de versions de fitxers[10] (paperera, versions simples o esglaonades, així com lliurament de versions a un programa o script extern) i patrons per ignorar rutes o fitxers.[11] Actualment s'admeten dues implementacions de hash SHA256 diferents, la més ràpida de les quals s'utilitzarà de manera dinàmica després d'una breu referència a l'inici.[12] El moviment i el canvi de nom dels fitxers i carpetes es gestiona de manera eficient, amb Syncthing processant aquestes operacions de manera intel·ligent en lloc de tornar a descarregar dades des de zero.[13]
El descobriment de dispositius s'aconsegueix mitjançant servidors discovery accessibles al públic allotjats pels desenvolupadors del projecte,[14] també podent-se configurar perquè treballi en mode local (LAN) mitjançant missatges de difusió, historial del dispositiu i nom/adreça d'amfitrió estàtic. El projecte també proporciona el programa Syncthing Discovery Server[15] per allotjar els propis servidors discovery, que es poden utilitzar de suport o com a substitució dels servidors públics.
La xarxa de servidors de retransmissió aportats per la comunitat permet que els dispositius que estan darrere de diferents tallafocs NAT IPv4 es puguin comunicar mitjançant la retransmissió de dades xifrades a través d'un tercer. La retransmissió realitzada és de naturalesa similar al protocol TURN, amb el trànsit TLS xifrat d'extrem a extrem entre dispositius (per tant, fins i tot el servidor de retransmissió no pot veure les dades, només el flux xifrat). Els relés privats també es poden configurar, amb o sense relés públics, si es desitja. La sincronització canviarà automàticament de la retransmissió a les connexions directes de dispositiu a dispositiu si descobreix que hi ha disponible una connexió directa.[16]
La sincronització es pot utilitzar sense cap connexió amb els servidors del projecte o de la comunitat:[17] les actualitzacions, les dades d'ús d'activació, el descobriment i la retransmissió es poden desactivar o configurar de manera independent, de manera que la malla i la seva infraestructura es poden executar en un sistema tancat per a la privadesa o confidencialitat.
La sincronització s'ha de configurar mitjançant un navegador web de manera local o remota (i admet l'accés mitjançant un servidor intermediari), les API REST i Events o un dels programes d'embolcall aportats per la comunitat.[18] També es proporcionen enllaços a imatges de Docker a la pàgina de contribucions de la comunitat, així com enllaços a solucions de gestió de configuració admeses com ara Puppet, Ansible i altres.
Historial de versions de Syncthing | ||
---|---|---|
Data | Versió | Canvis importants |
01-10-2019 | 1.3.0[26] |
|
09-07-2019 | 1.2.0[27] |
|
09-05-2019 | 1.1.3[28] |
|
2019-04-02 | 1.1.1[29] |
|
22-04-2019 | 1.1.0[30] |
|
01-01-2019 | 1.0.0[31] |
|
19-06-2016 | 0.14 "Dysprosium Dragonfly"[32] |
|
17-05-2016 | 0.13 "Copper Cockroach"[33] |
|
05-11-2015 | 0.12 "Beryllium Bedbug"[34] |
|
El llançament del binari públic inicial (v0.2) es va fer el 30 de desembre de 2013.[35]
L'octubre de 2014, l'autor original va anunciar que Syncthing s'estava reanomenant "Pulse".[36] Tanmateix, el 17 de novembre, el desenvolupador va decidir no canviar Syncthing a Pulse i ja no treballa amb ind.ie. Ind.ie's Pulse és ara una bifurcació oficialment aprovada de Syncthing.[37]
El 22 d'abril de 2015, es va publicar la 0.11.0 i va introduir la gestió de conflictes, la selecció d'idioma a la interfície d'usuari, l'ús de la CPU i millores de velocitat de sincronització, suport de noms de fitxer llargs a Windows, reinici automàtic quan hi ha un problema, per exemple, la unitat no és accessible i suport per a programari de versions extern.[38] 0.11 no és compatible amb versions anteriors de Syncthing.[38] A causa dels canvis als clients de sincronització de l'API REST que estaven a 0.10.x no s'actualitzarien automàticament a 0.11, ja que no era compatible amb moltes integracions de tercers en el moment del seu llançament.[38]
La 0.13.0, com moltes de les versions anteriors de Syncthing, és incompatible amb els clients que executen la versió 0.12.x i posteriors. 0.13.x separa els identificadors de carpeta de les etiquetes de carpeta. Ara també té la capacitat de servir parts del fitxer que ja s'han baixat a altres clients mentre encara s'està baixant.[39]
1.0.0, amb el nom en clau Erbium Earthworm,[40] realment no va aportar cap canvi important a la taula. Va ser més aviat una reflexió dels desenvolupadors sobre l'ús generalitzat del programa i el fet que ja portava gairebé 5 anys en desenvolupament en aquell moment.[41][42] Malgrat el canvi en el nombre principal, Jakob Borg, el desenvolupador principal, va declarar que era idèntic a 0.14.55-rc.2[40]
Al costat de la versió 1.0.0, l'equip va introduir un nou sistema de versions semblant a semver amb els criteris següents:[43]
A la 1.1.0 la sincronització va adoptar Go 1.12 i com a tal perd la compatibilitat amb Windows XP i Windows Server 2003[44]
1.2.0 introdueix suport per a QUIC, i ara pot elaborar informes automàtics d'error i obsolescència de blocs petits/fixos. 1.2.0 també va deixar de suportar la comunicació amb clients de Syncthing que funcionen amb 0.14.45 o anterior.[45]
1.8.0 afegeix una opció de carpeta experimental que permet als usuaris especificar com s'han de desar els canvis de fitxer en sistemes de fitxers de còpia en escriptura i també afegeix suport de perforació TCP.[46]
1.9.0 va introduir l'opció caseSensitiveFS
que permetia als usuaris desactivar el maneig recentment afegit per als sistemes de fitxers sense distinció de majúscules i minúscules.[47]
La versió 1.10.0 va donar als usuaris la possibilitat de canviar si voldrien que les IP LAN s'emetessin a la xarxa de descobriment global.[48]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.