LINUX.ORG.RU

Syncthing 0.13.0 «Copper Cockroach»

 ,


5

5

Состоялся очередной выпуск Syncthing — открытой кроссплатформенной программы для синхронизации и резервного копирования. По своим возможностям она аналогична BitTorrent Synс: заявлена синхронизация файлов между узлами в P2P-сети без участия сервера. Для этого используется собственный открытый протокол BEP («Block Exchange Protocol»).

Изменения в версии 0.13:

  • Изменены протокол (несовместим с 0.12) и формат базы. Первый запуск новой версии может происходить медленнее, чем обычно.
  • Устройства анонсируют не только уже загруженные файлы, но и те, которые ещё загружаются. Благодаря этому возможна отправка уже загруженных частей файла на другие устройства, не дожидаясь окончания полной загрузки.
  • Метки папок теперь отличаются от ID папок. Метки предназначены для людей, а ID для машин и для уникальности. У уже существующих папок ID не изменятся, но для новых папок будет предлагаться случайный уникальный идентификатор.
  • При попытке соединения от неизвестного устройства, будет отображаться не только ID, но и имя устройства.
  • Поддержка NAT-PMP в дополнение к уже существовавшей поддержке UPnP.
  • Игнорируемые файлы могут быть помечены префиксом (?d), чтобы Syncthing удалял эти файлы, если они остаются при удалении папки. Шаблоны игнорирования используют меньше памяти.
  • Возможность указать адрес для синхронизации (на стороне клиента и на стороне удалённого устройства) в виде «только IPv4» или «только IPv6» (tcp4:// или tcp6://). Значение по умолчанию (tcp://) по-прежнему означает «оба протокола одновременно».
  • Более понятный и лаконичный интерфейс настройки свойств папок.
  • Поддержка переменной ALL_PROXY_NO_FALLBACK, позволяющей запретить переход на прямое соединение, в случае возникновения проблем с прокси.
  • Исправлено множество ошибок.

Доступны готовые сборки, пакеты для Debian и Ubuntu, скриншоты и документация.

>>> Подробности

anonymous

Проверено: Shaman007 ()

в оригинале действительно folder, а не directory, так что энон ничего от себя не придумал, а по сабжу, как раз тестирую для синхронизации между лоликсом и кокосом, вот только жаль прийдется удалить и там и там, ибо стоит 0.12 версия и накатить 0.13. Сабж на Go, кстати.

kep ()

Устройства анонсируют не только уже загруженные файлы, но и те, которые ещё загружаются. Благодаря этому возможна отправка уже загруженных частей файла на другие устройства, не дожидаясь окончания полной загрузки.

Джва года ждал. В смысле прям сидел, читал релиз-нотес бета-версий и мое ожидание вознаградилось. Теперь даже не знаю, куда им осталось стремиться...

t184256 ★★★★★ ()

Обратная совместимость для слабаков. Реально уважаю.

post-factum ★★★★★ ()

отличная штука, пользуюсь на андроиде

pftBest ★★★★ ()

Оно научилось нормально синкаться, если у узлов несколько адресов, или всё так же цепляется за первый попавшийся?

В винде нормальную фоновую работу сделали хоть как-то?

По своим возможностям она аналогична BitTorrent Synс

... если хорошо обработать напильником.

Radjah ★★★★★ ()

По своим возможностям она аналогична BitTorrent Synс

Только последний скатился так, что им теперь пользоваться невозможно, а сабж пока не готов.

Когда нормальную архитектуру вместо поллинга прикрутят?

r3lgar ★★★★★ ()
Последнее исправление: r3lgar (всего исправлений: 1)
Ответ на: комментарий от r3lgar

а сабж пока не готов.

Неготов к чему? Пользуюсь последнюю пару месяцев для синхронизации документов между компьютерами, вполне доволен. На 0.13 уже обновился, всё работает как и прежде.

xxblx ★★★ ()
Ответ на: комментарий от r3lgar

Добавил новый каталог, содержащий ~7700 файлов во вложенных каталогах, ничего не взвесилось. Процесс, конечно, не пулей летит, но синхронит потихоньку, ничего не вешает.

У меня вряд ли больше 8-9k (рекурсивно) файлов в каталоге может быть (я старые отчеты и доки, как правило, в tar.gz кладу и в архив потом кидаю), может быть на большем количестве и взвесит.

xxblx ★★★ ()
Ответ на: комментарий от xxblx

У меня в основном каталоге 16880 файлов, btsync с этим крехтя справлялся, но syncthing только крехтит и вешается, попутно таща за собой всё остальное. Если я попытаюсь скормить ему одну из моих дир с пикчами (17.4G, 33167 файлов), то я боюсь, что оно мне диск кончит.

r3lgar ★★★★★ ()
Ответ на: комментарий от r3lgar

Global State 614581 items, ~25.4 GiB

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

LiBer ★★★ ()

обожаю syncthing! Лучшее решение для синхронизации файлов и замены облачных хранилищ. Девять устройств - синхронизация проходит идеально.

SL_RU ★★★ ()
Последнее исправление: SL_RU (всего исправлений: 1)

Версионность тут нормально работает? У меня где-то с 0,11 старые версии файлов переименовывались с добавлением тега «conflict» вместо того чтобы переместиться в подпапку для старых версий.

anonymous ()

У меня синхронизирует более 20К файлов с музыкой вообще без проблем. Раньше пользовался rsync.

anonymous ()

Кстати, а как оно справится с большим файлом (пусть будет 1Тб), который представляет собой образ зашифрованного диска? Будет полностью пересылать? Или сможет только изменяемые блоки/части?

h4tr3d ★★★★★ ()
Ответ на: комментарий от h4tr3d

Кстати, а как оно справится с большим файлом (пусть будет 1Тб), который представляет собой образ зашифрованного диска?

Если это том zfs, то можно по частям, хотя возможно есть еще какие-то решения с делением на блоки.

anonymous ()

эта вундервафля мне половину документов похерила, а потом размножила на все устройства

bernd ★★★★★ ()

протокол (несовместим с 0.12)

И так каждый релиз..

anonymous ()
Ответ на: комментарий от bernd

эта вундервафля мне половину документов похерила, а потом размножила на все устройства

всем хорошо известно какие у педобира «документы»

anonymous ()
Ответ на: комментарий от bernd

эта вундервафля мне половину документов похерила

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

Я очень боюсь rsync и не хочу его использовать, а собж нравится.

kep ()
Ответ на: комментарий от m0rph

есть в отдельном виде

Это мне ещё в прошлой новости показывали.

автор не осилил что-то там

Так почему автору не взять, и не слить код в один проект? Это же капец какой-то с поллингом! Предлагать в иссуях, я думаю, бесполезно, аффтар тот ещё наркоман.

r3lgar ★★★★★ ()
Ответ на: комментарий от kep

Я очень боюсь rsync

Чего его бояться? Я только им и переносил генточку с одного диска на другой. Хотя, он явно не для того, чтобы зеркалить документики, да.

r3lgar ★★★★★ ()
Ответ на: комментарий от r3lgar

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

kep ()
Ответ на: комментарий от kep

для синхронизации

Для синхронизации он не упёрся, на самом деле.

не удобен он

Без работы демоном-то, естественно.

бывали у меня с ним бока

Ну, тут уж как настроишь.

Сабж тоже не идеален, но он хотя бы предназначен для синхронизации (точнее для держания зеркал up-to-date без телодвижений), но вот с поллингом он не упёрся тоже.

r3lgar ★★★★★ ()
Ответ на: комментарий от kep

Я очень боюсь rsync и не хочу его использовать

Можно по подробнее? Чего можно бояться в проверенной годами вещи? При этом неведомая, молодая, хрень «а собж нравится.»

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от anc

Синхронизация между макосом и линуксом, даже если запускать --no-perms --no-owner --no-group --no-times и прочие атрибуты могу возникнуть конфликты, стремно доверять ему удаление/перезапись, а смотреть каждый раз dry run что он будет делать — не вариант вообще. Получается, даже сложнее, синхронизация между линуксом и макосом, на котором диск в exfat, rsync вообще в этой каше атрибутов теряется.

Еще меня доставляет в этой «проверенной годами вещи» такое, ты знаешь, что для rsync -rvnc если указать директории как:

rsync -rvnc test1 test2
то работать не будет! Нужны обязательные слеши несмотря на -r:
rsync -rvnc test1/ test2/
стремная тема, он понять не может, что это диры без указания слешей, не дичь ли в 2016 году?

kep ()
Ответ на: комментарий от kep

Я правильно понял, нужна удобная хреновина для разрешения конфликтов и при этом запускаемая временами? Тогда да, полностью соглашусь, rsync не вариант.
ЗЫ Для мультиплатформенности, я остановился пока на seafile (в owncloud разрешение конфликтов с залоченными файлами имхо хуже реализовано). А вот как раз сабж по вашему выражению " очень боюсь" :)

anc ★★★★★ ()

Блин, да задрали они ломать совместимость и формат базы!

KRoN73 ★★★★★ ()
Ответ на: комментарий от r3lgar

По своим возможностям она аналогична BitTorrent Synс

Только последний скатился так, что им теперь пользоваться невозможно

А что с BTSync не так? Использую его повсеместно в паре с Syncthing (т.к. они не заменяют друг друга), проблем не вижу. Если бы в BTSync был бы версионный бэкап, то от Syncthing вообще отказался бы.

KRoN73 ★★★★★ ()
Ответ на: комментарий от xxblx

а сабж пока не готов.

Неготов к чему?

Плохо работает за NAT; жрёт уйму ресурсов под Android; не позволяет подключаться другим машинам только по ключу; без подтверждения доступа, при групповых рекомендациях машин, бывает, вылезает ад с взаимными рекомендациями, когда постоянно лезут уже удалённые машины; синхронизация постоянно обламывается при включении уже имеющихся файлов в игнор-список — это в 0.12.x, новую ещё не пробовал и не скоро попробую, сложно всю инфраструктуру с дюжиной инстансов и терабайтом синхронизированного барахла перейти на несовместимую версию. Тоже к вопросу о готовности — это уже не первый облом с обратной совместимостью...

В общем, для простых задач нормально работает, на сложных — очень капризен.

KRoN73 ★★★★★ ()
Ответ на: комментарий от r3lgar

То есть используется поллинг, который вешает IO на over9K файлов.

Есть и хорошо работает syncthing-inotify. Сторонняя утилита, которая дёргает syncthing через API, когда что-то меняется в каталоге.

KRoN73 ★★★★★ ()
Ответ на: комментарий от KRoN73

А что с BTSync не так?

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

r3lgar ★★★★★ ()
Ответ на: комментарий от h4tr3d

Будет полностью пересылать? Или сможет только изменяемые блоки/части?

Во, вспомнил, что ещё бесит в сабже. Когда файл перемещаешь в другой каталог, он его на целевых машинах удаляет и синкает заново. Не отлавливает перенос. Начинаешь фотки/видео сортировать — на бэкап-машине в .stversions начинают пухнуть гигабайты дублей... Хорошо ещё, что fdupes есть. Но всё равно геморроя много.

KRoN73 ★★★★★ ()
Ответ на: комментарий от bernd

эта вундервафля мне половину документов похерила, а потом размножила на все устройства

Вот поэтому и нужен версионный бэкап. Именно из-за него только syncthing и терплю. А то, вот, BTSync однажды мне фотки с отпуска похерил. Приехал домой, залил на комп, он начал синкать в бэкап, на бэкапе кончилось место, фотки обнулились и он эти обнулённые засинкал на оригинал. Опаньки. На Syncthing с его версионным бэкапом такое невозможно. Любые изменения — и старые версии файлов падают в .stversions

KRoN73 ★★★★★ ()
Ответ на: комментарий от r3lgar

Я очень боюсь rsync

Чего его бояться?

Помню, у меня стояли две машины с мастер-мастер синком через lsyncd. Начал с одной из машин возиться, отмонтировал синхронизируемый каталог. lsyncd начал синкать «обнуление» на вторую машину. Я это не видел, конечно. Через несколько минут примонтировал назад на второй машине каталог и с удивлением начал наблюдать, как на нём методично исчезают файлы! Это началась синхронизация удалённых со второй машины файлов с текущей :D Самое печальное, что это была фактически система бэкапа, других версий не было. Восстановил потом из кешей всяких, но не всё в точности как было.

Так что с помощью rsync тоже можно виртуозно выстрелить себе в ногу :D

KRoN73 ★★★★★ ()
Ответ на: комментарий от r3lgar

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

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

KRoN73 ★★★★★ ()
Ответ на: комментарий от KRoN73

Есть и хорошо работает syncthing-inotify.

Я уже знаю про это, но это не отменяет того, что сам syncthing ущербно-архитектурный.

Сторонняя утилита, которая дёргает syncthing через API, когда что-то меняется в каталоге.

Но это не отключает поллинг, я правильно понимаю?

Так что с помощью rsync тоже можно виртуозно выстрелить себе в ногу :D

Просто не нужно делать мастер-мастер, когда бэкап только на одной машине.

Убрали снова все ограничения. Уже год, наверное, как.

Не, не то. Это мне бы не помешало, у меня всего две диры синкались. Что-то совсем упоротое. Я бы поискал драму, помню, что репостил в одну конфу, но конфа загнулась, а логи я снёс ещё пару месяцев назад.

r3lgar ★★★★★ ()
Ответ на: комментарий от r3lgar

Но это не отключает поллинг, я правильно понимаю?

Можно поставить интервал пересканирования хоть в год :)

Не, не то. Это мне бы не помешало, у меня всего две диры синкались. Что-то совсем упоротое.

Других проблем не знаю.

KRoN73 ★★★★★ ()
Ответ на: комментарий от KRoN73

Справедливости ради: андроид-версия - неофициальная, от стороннего разработчика. Хотя, с точки зрения пользователя, конечно, пофиг.

А, что касается NAT, в прошлом году же, вроде, ввели в строй несколько релеев по всему миру. Не помогло?

anonymous ()
Ответ на: комментарий от anonymous

А, что касается NAT, в прошлом году же, вроде, ввели в строй несколько релеев по всему миру. Не помогло?

Оно работает. Но когда обе машины за NAT — то плохо. Долго не видят друг друга, долго синхронизируются. А когда на NAT оказывается две машины — вообще чудеса начинаются. Иногда часы проходят, прежде чем одна машина на другую данные начнёт посылать.

Хотя, что там NAT... Вот такое может сутками висеть (целевая машина — «белоайпишная»):

https://twitter.com/balancer73/status/733128460026191872

Как видно, обновление до 0.13 не помогло :)

KRoN73 ★★★★★ ()
Ответ на: комментарий от kep

думаю это связано с перезагрузкой устройства во время синхронизации. синкалка подумала файлы нулевых размеров (зачем она их создала вообще?!) это новые версии файлов и раскидала по всем устройствам.

bernd ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.