The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Релиз открытой P2P-системы синхронизации файлов Syncthing 0.13

17.05.2016 22:44

Состоялся релиз системы Syncthing 0.13, которая позволяет организовать автоматическую синхронизацию файлов пользователя на нескольких устройствах, решая задачи сходные с проприетарной системой BitTorrent Sync. Синхронизированные данные не загружаются в облачные хранилища, а напрямую реплицируются между системами пользователя при их одновременном появлении в online, используя развиваемый проектом протокол BEP (Block Exchange Protocol).

При синхронизации файл логически разбивается на блоки, которые являются неделимой частью при передаче данных между системами пользователя. При наличии идентичных блоков на нескольких устройствах, при синхронизации на новое устройство копирование осуществляется с распределением отдачи трафика по узлам, по аналогии с работой системы BitTorrent. Чем больше устройств участвуют в синхронизации, тем быстрее будет проходить репликация новых данных за счёт распараллеливания. При изменении синхронизируемых файлов по сети передаются только изменившиеся блоки данных, а при переименовании или изменении прав доступа синхронизируются только метаданные. Поддерживается несколько режимов версионирования файлов, при которых сохраняются прошлые версии изменившихся данных.

Возможно создание больших сетей совместно используемых данных, в которых принимают участие разные пользователи. Также возможно определение хостов, которые будут только получать данные, т.е. их изменения не будут распространяться. Предоставляются гибкие средства контроля доступа и создания исключений для синхронизации. Каналы передачи данных формируются при помощи TLS, все узлы аутентифицируют друг друга по сертификатам и идентификаторам устройств, для контроля целостности применяется SHA-256. Для определения узлов синхронизации в локальной сети может быть использован протокол UPnP, при котором не требуется ручной ввод IP-адресов синхронизируемых устройств.

Код Syncthing написан на языке Go и распространяется под свободной лицензией MPL. Поддерживается работа в Linux, Android, Windows, OS X, BSD* и Solaris. Для настройки системы и мониторинга предусмотрен встроенный web-интерфейс, CLI-клиент и GUI Syncthing-GTK, в котором дополнительно предоставляются средства управления узлами синхронизации и репозиториями. Для упрощения поиска узлов Syncthing развивается сервер координации обнаружения узлов, для которого также имеется готовый образ для запуска в Docker.

Основные изменения в Syncthing 0.13:

  • Временные индексы, позволяющие начать репликацию на другие устройства уже полученной части файла, не дожидаясь получения на текущем устройстве полной копии обновлённого файла;
  • Представлены метки папок (Folder Labels), которые отделены от идентификаторов папок (Folder ID): Folder Labels позиционируются как читаемые человеком метки, в то время как Folder ID используются как разбираемые машиной, уникальные, генерируемые случайно идентификаторы.
  • При попытке соединения от неизвестных устройств (Unknown Devices) теперь выводится не только идентификатор устройства, но и его имя.
  • В дополнение к UPnP реализована поддержка технологии NAT-PMP для автоматической настройки проброса входящего соединения на систему за транслятором адресов;
  • Исключённые из процесса синхронизации файлы (подпадающие под маски игнорирования) теперь помечаются специальным префиксом "?d", указывающим на то, что в случае удаления директории данный файл будет потерян;
  • Возможность ограничения протокола приёма соединений только IPv4 или IPv6 (по умолчанию соединения принимаются по обоим протоколам);
  • Переработан диалог настройки параметров папки;
  • Добавлена переменная окружения ALL_PROXY_NO_FALLBACK, запрещающая установку прямого соединения в случае недоступности рабочего прокси;
  • Изменён формат БД и нарушена обратная совместимость протокола (пользователи версии 0.12 не могут взаимодействовать с пользователями версии 0.13).


  1. Главная ссылка к новости (https://github.com/syncthing/s...)
  2. OpenNews: Началось публичное тестирование технологии синхронизации компьютеров BitTorrent Sync
  3. OpenNews: Выпуск открытой P2P-системы синхронизации файлов Syncthing 0.12
  4. OpenNews: Релиз SparkleShare 1.0, программы для синхронизации данных и организации совместного доступа
  5. OpenNews: Релиз ПО для синхронизации SyncEvolution 1.0
  6. OpenNews: Выпуск Seafile 3.1, Dropbox-подобного сервера хранения на основе технологий Git
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/44447-syncthing
Ключевые слова: syncthing, sync
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (49) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, DF (??), 22:54, 17/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +10 +/
    Круто! Благодаря Syncthing я отказался от Dropbox и Google Disk, а также забыл про ручные бекапы как страшный сон.
     
     
  • 2.2, Аноним (-), 23:03, 17/05/2016 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Это сарказм. Если у тебя только пара периодически включаемых компьютеров, сервис с центральным сервером (который всегда онлайн) удобнее.
     
     
  • 3.3, DF (??), 23:08, 17/05/2016 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Это не сарказм. У меня в кластере 6 моих машин.
     
     
  • 4.16, Аноним (-), 03:12, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Значит сарказм у ворот.
     
  • 2.5, Анонимный эксперт (?), 23:15, 17/05/2016 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Syncthing не замена бекапам. Ошибка в софте может убить данные одновременно везде.
     
     
  • 3.7, Аноним as anon (?), 23:19, 17/05/2016 [^] [^^] [^^^] [ответить]  
  • –4 +/
    > Syncthing не замена бекапам. Ошибка в софте может убить данные одновременно везде.

    +1. в такой ситуации помогает только ручное восстановление из истории - если что еще осталось ;)

     
  • 3.12, DF (??), 00:20, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Слова того, что Syncthing не пробовал. Как можно убить данные? Там есть варианты хранения бекапов файлов по дням, по количеству версий, ступенчатое управление версиями и возможность подключить сторонний софт к управлению бекапами. Причем бекапы на каждой машине свои... я не знаю кем надо быть, чтобы там что то запороть. В Syncthing реализована наилучшая "история" которую я когда либо видел.
     
     
  • 4.24, Аноним (-), 08:24, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +9 +/
    https://docs.syncthing.net/users/faq.html


    Is Syncthing my ideal backup application?

    No. Syncthing is not a great backup application because all changes to your files (modifications, deletions, etc) will be propagated to all your devices. You can enable versioning, but we encourage the use of other tools to keep your data safe from your (or our) mistakes.

     
  • 4.26, Атата (?), 09:39, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >> Слова того, что Syncthing не пробовал. Как можно убить данные?

    Болеешь сильно?
    Скушал что-то?

     
     
  • 5.28, Аноним (-), 09:57, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Нечего ответить - начинай оскорблять.
     
     
  • 6.41, Атата (?), 13:10, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >> Нечего ответить - начинай оскорблять.

    Начинаю оскорблять:
    к созданию резервных копий P2P синхронизация файлов не имеет никакого отношения.

    В силу очевидно же различных способов действия предназначенных для создания бекапов пакетов и пакетов, предназначенных для синхронизирования папок.

     
     
  • 7.48, Аноним (-), 16:34, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Если позволяет хранить консистентную копию данных в пригодном для извлечения простыми средствами формате, то почему нет? Понятно, что у любого адекватного чела такая система доверия не вызывает, но я бы вполне успокоился имея копию (стороннимим средствами) данных на одной машине из пяти.
     
     
  • 8.49, Атата (?), 17:11, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Если я порушил файлы, то я восстанавливаю их из Bacul ы Например, ошибка в отла... текст свёрнут, показать
     
     
  • 9.57, Очередной аноним (?), 13:07, 24/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    ну так у этой системы ведь еще есть и версионирование Просто возьмешь раннюю ве... текст свёрнут, показать
     
  • 4.30, Аноним (-), 10:44, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Когда ж вы переведётесь. Syncthing это синхронизатор. История Syncthing - это не резервное копирование, а некий заменитель, т.к. делается на тот же носитель, даже в ту же файловую систему. Даже домашний бэкап должен быть как минимум однонаправленным, на как можно более отдельной системе, и восстановление должно регулярно проверяться, иначе смысла в нем мало.

    >возможность подключить сторонний софт к управлению бекапами

    Не то же самое, что и иметь функциональность системы резервного копирования.

     
     
  • 5.58, Очередной аноним (?), 13:19, 24/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Даже домашний бэкап должен быть как минимум однонаправленным,

    В статье же: "Также возможно определение хостов, которые будут только получать данные, т.е. их изменения не будут распространяться..."

    > на как можно более отдельной системе

    Ну так синхронизация между разными устройствами. Почему бы не завести отдельное устройство - сервер, который только принимает данные.

    Другой вопрос - авторы сами не позиционируют ее использовать как бэкап-систему

     
  • 4.31, Аноним (-), 10:48, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Там есть варианты хранения бекапов файлов

    Там нет бэкапов. Там есть простенькое ВЕРСИОНИРОВАНИЕ. Это разные вещи, предназначенные для разных задач. Хотя никто не запрещает забивать отверткой гвозди, а молотком вкручивать шурупы, конечно.

     
  • 4.33, НяшМяш (?), 11:53, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Как можно убить данные?

    Легко. Кто-то на одной машине сделал rm - удалилось везде. А версионирование может не спасти, если там файлы по пару десятку гигов. И может спасти только машина, которая случайно не была в сети в тот момент.

     
     
  • 5.36, Аноним as anon (?), 12:24, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    не трать время - оно золото. надо просто подольше поюзать синксынг, чтобы однажды словить данную проблему. и +1, помогает срочное выдергивание из сети ;) а гигабайты там легко набегают - поставил чуть больше историю и вуаля, гигобайты! причем, их не видно. вот чего не хватает в данной системе, это возможности отката через ГУЙ. в том же seafile есть, а тут ну никак не сподобятся дописать.
     
  • 2.6, Аноним as anon (?), 23:17, 17/05/2016 [^] [^^] [^^^] [ответить]  
  • –2 +/
    бэкапы тут вообще ни при чем. это именно синхронизация. например, завожу деловую папку и завязываю в единую систему комп, планшет и телефон. и теперь у меня всегда под рукой последние актуальные документы вне зависимости от того, где я их создаю и на какой платформе с ними работаю. а если нужен облачный сервис типа дропбокса, то смотрите в сторону Seafile. это будет как раз таки замена бэкапам.
     
  • 2.14, alex (??), 00:54, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Брат воскрес?
     
     
  • 3.34, Аноним (-), 12:01, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Большой? Он живее всех живых! ;)
     
  • 2.52, demfloro (ok), 01:09, 19/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Сам по себе syncthing плохо подходит для бекапов, нужно хотя бы readonly снапшот снимать с каталога, например, с помощью btrfs.
     

  • 1.9, iZEN (ok), 23:49, 17/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Концепция хороша. А что с защитой данных от преднамеренной порчи?
     
     
  • 2.11, Crazy Alex (ok), 00:12, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    По идее - эта софтина вообще не о том. Её основное предназначение - синхронизация между своими устройствами.
     
  • 2.21, robux (ok), 07:11, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > А что с защитой данных от преднамеренной порчи?

    "от преднамеренной порчи" где, в канале или на машине юзера?
    если в канале, то TLS,
    если на машине, то против лома нет приёма.

     

  • 1.10, Crazy Alex (ok), 23:56, 17/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    вот теперь бы туда "удалённые узлы" с опциональным шифрованием ещё... а то пока единственное, что это хотя бы в теории делает - git-annex, но настолько глючного софта я давненько не видел.
     
     
  • 2.47, Йух (??), 14:43, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > вот теперь бы туда "удалённые узлы" с опциональным шифрованием ещё... а то
    > пока единственное, что это хотя бы в теории делает - git-annex,
    > но настолько глючного софта я давненько не видел.

    Фишка была в BTSync. можно было добавлять узел который хранил и раздавал, но локально все данные были зашифрованы.

    но BTSync закрытый и эту возможность толи выпилили толи скрыли.

     
     
  • 3.50, Crazy Alex (ok), 17:18, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Это немного другое. Я имел в виду фичу, позволяющую держать копии данных в недоверенных облаках - всякие гуглодрайвы, дропбоксы и т.п.

    Ну и да, закрытый BTSync в это плохо вписывается.

     
     
  • 4.55, zeone (?), 12:42, 19/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    encfs --reverse + rsync/syncthing?
     

  • 1.13, Аноним (13), 00:26, 18/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я так понимаю можно использовать как замену lsyncd ?
     
  • 1.15, Аноним (-), 03:11, 18/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Любопытно как они решают проблему конфликтов. Например я на первом устройстве отредактировал файл (устройство в офлайне) и на втором тоже отредактировал файл (устройство тоже офлайн). Потом вывел оба устройства в онлайн и делаю синк. Какая версия файла синхронизируется на другие устройства ? Может там есть какой-то распределенный алгоритм консенсу для таких случаев (вроде paxos).
     
     
  • 2.19, Аноним (-), 07:05, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +2 +/
    В этом случае файлы не синхронизируются.
    В веб-интерфейсе будет пометка, что есть конфликты, которые предлагается разрешить в ручном режиме.
     
  • 2.22, robux (ok), 07:16, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Любопытно как они решают проблему конфликтов. Например я на первом устройстве отредактировал
    > файл (устройство в офлайне) и на втором тоже отредактировал файл (устройство
    > тоже офлайн). Потом вывел оба устройства в онлайн и делаю синк.
    > Какая версия файла синхронизируется на другие устройства ? Может там есть
    > какой-то распределенный алгоритм консенсу для таких случаев (вроде paxos).

    каждая машина получает у другой изменения и мержит их в свой файл,
    пользователю на емейл высылается уведомление,
    особенно хорошо мержатся вордовские доки и таблицы екселя.

    тег: сарказм.

     
  • 2.23, robux (ok), 07:23, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Любопытно как они решают проблему конфликтов.

    Вот ещё по этому поводу:
    "В версии 0.11 изменён способ преодоления конфликтов, если файл был изменён одновременно на двух устройствах. До этого был режим версионирования, изменения сохранялись и можно было откатить файл назад. Теперь активным остаётся новый файл, а старый сохраняется под именем "file.sync-conflict-YYYMMDD-HHMMSS.ext"."
    https://vk.com/wall-56092988_1140

     
     
  • 3.38, Аноним as anon (?), 12:32, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    >> Любопытно как они решают проблему конфликтов.
    > Вот ещё по этому поводу:
    > "В версии 0.11 изменён способ преодоления конфликтов, если файл был изменён одновременно
    > на двух устройствах. До этого был режим версионирования, изменения сохранялись и
    > можно было откатить файл назад. Теперь активным остаётся новый файл, а
    > старый сохраняется под именем "file.sync-conflict-YYYMMDD-HHMMSS.ext"."
    > https://vk.com/wall-56092988_1140

    а еще эта фигня, бывает путается и ляпает конфликты почем зря. и что значит "остается активным"? где? просто в одном месте это сам файл, на втором это уже конфликт со старым. а когда заходишь с третьего репозитория, то уже не знаешь, что и открывать - лежат два дока одной длины и одной даты ;)

    не самый это лучший способ.

     
  • 2.25, Алексей (??), 09:22, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    "Победит" более новый файл. Более старый будет синхронизировал с пометкой о конфликте и датой в имени.
     

  • 1.17, Аноним (-), 03:17, 18/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А анонимных клиентов или единую авторизацию на всех нодах уже впилили?

    Ломает на всех нодах прописывать разные ключи.

    Или BitTorrent_Sync по-прежнему наше всё?

     
     
  • 2.40, Аноним as anon (?), 12:40, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А анонимных клиентов или единую авторизацию на всех нодах уже впилили?
    > Ломает на всех нодах прописывать разные ключи.
    > Или BitTorrent_Sync по-прежнему наше всё?

    там есть загрузка через штрихкод - пользуйтесь. и еще ноду можно назначить раздающей соседей. если у вас десктопы, то завяжите их всех на админский телефон, а потом просто нового подключайте к нему. на телефоне ж, поди, есть считка QR-кодов? а уже ваш телефончик раздаст соседей.

     

  • 1.27, Аноним (-), 09:55, 18/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    что ваше все?
     
  • 1.29, Аноним (-), 09:58, 18/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    пока не осилил, на до бы спокойно дома поразбираться. Интерфейс прям скажем пока до ума не доведен.
     
     
  • 2.51, Аноним11.11 (?), 00:04, 19/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    а чего тут осиливать ?
    сам тока узнал об этой замечательной программе, установил, потестил, понравилось,в общем:
    1) устанавливаем на всех компах где будем использовать
    2) запускаем
    $ syncthing
    и через веб-интерфейс настраиваем программу, выбираем папку для синхронизации, добавляем по копы ID каждого к каждому ну и саму папку в придачу
    Если нужно запустить web-интерфейс в локальной сети например на сервере, то можно так:
    $ syncthing --gui-address="192.168.1.2:8384"
    3) Добавляем в автозагрузку одним из способов, на сайте подробно описано
     

  • 1.32, Anonim3 (?), 11:17, 18/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Скорость синхронизации выше чему Seafile?
     
     
  • 2.39, Аноним as anon (?), 12:37, 18/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Скорость синхронизации выше чему Seafile?

    мне показалось, что да. он не такой задумчивый. я бывает им фильмы раздаю на мобилки и планшеты. реально лучше, чем по smb или с флешки. закачка происходит в фоне.

    но там самая большая проблема скормить сразу много. например 50Г ;) сиафайл тут просто ложится и не встает. а syncthing качат с видимой результативностью.

     

  • 1.35, Анонимфывфыв (?), 12:12, 18/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    как оно работает по скорости если 60к файлов и 50тер
    локалка гигабит, файлы обновляются крайне редко
     
     
  • 2.54, Алексей (??), 10:05, 19/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    У людей по 160к файлов и 300гиб в одной директории синхронизируется.
    https://data.syncthing.net/
     

  • 1.43, Аноним (-), 13:47, 18/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Опять формат БД сломали! Тоже самое было при переходе с 0.11.x на 0.12.x.
     
     
  • 2.56, koja (?), 17:42, 19/05/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    автор обещал в версии 1.0 устаканить формат БД. а до тех пор его будут часто менять.
     

  • 1.53, BlackRaven86 (ok), 06:38, 19/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кстати, она еще портирована на андроид и Synology NAS.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру