2gusia (2gusia) wrote,
2gusia
2gusia

Categories:

SyncThing на nas4free из коробки

SyncThing - годный продукт с открытой лицензией (MPL 2.0) позволяющий синхронизировать файлы между несколькими устройствами. Поддержка Win, Linux, OS X, BSD, Solaris, Android (но НЕ iOS). i386, x64, ARM. На nas4free с недавних времён работает из коробки на всех этих платформах, включая ARM - сам проверял. От похожего продукта BTSync, ударившегося в монетизацию, несколько отличается принципом расшаривания папки. На BTSync у папки создаётся уникальный ID. Сообщаешь его второй стороне - тот может синхронизировать папку. У SyncThing (STH далее для краткости) в явном порядке надо указать, с кем ты согласен работать и согласиться обмениваться с ним файлами из конкретной папки. Это гибче - но несколько заморочнее.

Сегодня мы настроим STH на двух разных nas4free. Но вся настройка идёт из вебгуя приложения, так что на любой настольной платформе должно быть аналогично. А Андроидом озабочусь отдельно.

Прим. Ранее я настраивал STH и из командной строки и как расширение. Но прекратил использование по 2 причинам - жрал много процессора и затруднялся пробиться через NAT. Камрады пишут, что проблемы решены - вот и проверим на себе. UPD от 30 дек 2015 Проверено - решены
Варианты инсталляции как расширение и из командной строки могут быть интересны и по сей день. Например из-за желания иметь несколько одновременно доступных копий syncthing (пример - 11 и 12 версии имеют несовместимый между собой протокол, а есть удалённые компы с обоими; пример 2 - хочется отделить мух от котлет, а разные рабочие проекты от личных фоток). Или когда не хочется лишний раз апгрейдить (или даже останавливать) nas4free, а вот как раз часто обновляемый syncthing есть потребность обновить - тут расширение - годный вариант. /UPD


1. Для начала советую вам придумать, где будут находиться три папки, связанные с STH.
Во-первых, папка для конфига. У меня для таких вещей выделен специальный датасет для расширений. Куда нет доступа ни по SMB ни по NFS. Но вы можете создать её и через ftp где-то в укромном месте. И через SMB. Помните, что после активации SyncThing эта папка станет недоступной не привилегированному пользователю. Да и нечего ему там делать.

Во-вторых, папка для того, чтобы раздавать, то есть только для чтения с других компов. Например, сюда положите фотки собственного чада для отсылки брату или сестре. Они (но никто другой, кому вы явно не дадите доступа) их получат, но если сотрут у себя - у вас в папке всё сохранится.

У меня эта папка будет на /mnt/Pool/SyncThing/Mike

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

У меня эта папка будет на /mnt/Pool/SyncThing/Input

Впоследствии вы можете удалить эти папки и/или по аналогии создать сколько угодно новых, в том числе (и прежде всего) сделав доступными для синхронизации существующие папки.

1. Как пример создаю папку для конфига руками (Но вы можете создать её и через ftp где-то в укромном месте. Или через SMB. И дальнейшую часть этого пункта пропустить.)
И смотрю что получилось
nas4free / root~$ cd /mnt/Pool/Ext/Extensions
nas4free Extensions/ root~$ mkdir SyncThing
nas4free Extensions/ root~$ ls -la
total 158
drwxr-xr-x 2 root wheel 2 Dec 27 23:24 SyncThing/
drwxrwxrwx 2 root wheel 3 Aug 23 15:02 mc/


- она принадлежит root

2. Теперь активируем STH из вебгуя
Идём в Services|Syncthing

Ставим галку на Enable, выбираем нашу папку, жмём кнопку Save and Restart

3. (НЕ обязательно, чисто из любопытства)
взглянем на нашу папку

nas4free Extensions/ root~$ ls -la
total 158
drwxrwxr-x 9 root wheel 9 Dec 27 23:24 ./
drwxrwxr-x 8 root wheel 8 Nov 20 23:22 ../
drwx------ 3 syncthing syncthing 10 Dec 27 23:24 SyncThing/
drwxrwxrwx 2 root wheel 3 Aug 23 15:02 mc/


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

3. Жмём ссылку административного гуя, на картинке выше http://192.168.1.34:8384/
И видим первоначальный гуй


Первым делом идём в Настройки (цифра 1) и вводим логин (Имя пользователя для доступа к панели управления) и пароль строкой ниже
Нажмите Сохранить.

Теперь очень советую изменить имя вашего компа для SyncThing (цифра 2) на что-то понятное для тех, с кем вы будете синхронизировать. Имя, включающее ваш сетевой ник, имя и тп - хорошая идея. К примеру, я ввёл MikeMac's NAS

3. Создаёте удобным вам способом папки 2 и 3 из п 1. Тк эти папки будут там, где данные - то создать их через SMB - годная идея. В любом случае, проще будет, если обеспечить полный доступ к этим папкам.

4. В вебгуе, картинка ВЫШЕ жмём кнопку + Добавить папку
И заполняем диалог по аналогии с тем, как это сделал я

Важно придумать осмысленный ID папки и прописать путь к ней. Путь при заполнении даёт подсказки, заполнять просто.

Если папка только для чтения - ставим галку на Папка-оригинал

Аналогично можно завести вторую папку (input у меня) Но если она для приёма - её можно и не определять в SyncThing. Это прекрасно произойдёт позже, на этапе рукопожатия локального и удалённого компов. Вообще, каждую расшариваемую папку надо в файловой системе создавать на каждом компе, как мы это сделали с третьей папкой в п 1. А вот представлять папку SyncThing надо только один раз на том компе, где она оригинал и на любом, если она нигде не оригинал. Остальное произойдёт при рукопожатии, когда STH спрашивает, согласны ли вы принять папку.

5. Теперь советую удалить папку defaul (клик на её имя, изменить, удалить)

На этом месте локальная настройка приостанавливается. Аналогичную настройку надо произвести на второй машине - в вашей локальной сети или на удалённом компе. И только потом продолжать.

Предполагаем, что мы это сделали.


6. На удалённом компе идём в Действия - показать ID. И передаём буквенно - цифровой индекс на локальный NAS (мылом, по SMS и пр)

7. На локальном NAS жмём кнопку +Добавить устройство

ID - строка из предыдущего пункта
Имя - удобное для вас его имя, не обязано совпадать с тем, что задал его хозяин
Даём доступ только к тому, чем желаем поделиться - в нашем случае только папкой Mike, тк в input будем принимать инфу.
Остальное - достаточно очевидно.
Жмём сохранить

8. На удалённом NAS появляется такой запрос


Если это кто-то свой - жмём добавить

9. После небольшой задержки на удалённом NAS - новый вопрос



Соглашаемся, в открывшемся диалоге (как в п 4) отображаем удалённую папку на нашу папку input

10. Теперь пп 7-10 при желании можно проделать ещё раз, но поменяв локальный и удалённый комп местами. К счастью, этого делать не надо. Тк рукопожатие произошло, всё проще. На удалённом компе жмём имя подключённого устройства, изменить, даём ему человеческое имя и ставим галочки на те папки, что хотим с ним расшарить.

На локальный комп приходит запрос как в п 9.

11. Можете самостоятельно выбрать папочку на своём компе и расшарить её с подключённым удалённым.


ЗЫ. Всё заморочно только при начальной настройке. Потом - очевидно.
Tags: backup, nas, nas4free, syncthing
Subscribe

  • С чем и поздравляем

    Президент Владимир Путин поздравил участников команды Team Spirit с победой на чемпионате мира по Dota-2. Телеграмма опубликована на сайте Кремля.…

  • Мне-таки стыдно ходить с вами по одной Одессе

    Депутат Госдумы Виталий Милонов заявил в эфире радиостанции "Говорит Москва": «...незамужним россиянкам вообще нужно запретить ездить в Турцию»…

  • Но паразиты - никогда!

    Рекламная компания выборов достучалась и до меня. (вон сегодня Гугл с Эппл к раздаче подтянулись, отчитались об изъятии приложения Навальный). Решил…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 22 comments

  • С чем и поздравляем

    Президент Владимир Путин поздравил участников команды Team Spirit с победой на чемпионате мира по Dota-2. Телеграмма опубликована на сайте Кремля.…

  • Мне-таки стыдно ходить с вами по одной Одессе

    Депутат Госдумы Виталий Милонов заявил в эфире радиостанции "Говорит Москва": «...незамужним россиянкам вообще нужно запретить ездить в Турцию»…

  • Но паразиты - никогда!

    Рекламная компания выборов достучалась и до меня. (вон сегодня Гугл с Эппл к раздаче подтянулись, отчитались об изъятии приложения Навальный). Решил…