Павел Спектр
Java-developer
Доброго дня, ребята! Все же тема оказалась достаточно актуальной и интересной и, как обещал, мы её сегодня исследуем.
Не буду расписывать какой Obsidian
замечательный и какие дает возможноти — кто в теме и так понимают, что это не просто программа, а целый 2-й мозг и у каждого он свой.
Я не так давно начал использовать Obsidian
и фактически со старта столкнулся с проблемой синхронизации между всеми устройствами. Это и побудило меня решить этот вопрос — один раз и насовсем.
Плагин или стороннее приложение?
Поначалу я использовал бесплатное кроссплатформенное приложение, которое позволило связать мои устройства напрямую, по туннелю. Называется SyncThing. Просто в приложении указываем папку на устройсте, которую будем синхронизировать, настраиваем параметры синхронизации, добавляем наши устройства и готово.
Правда есть несколько оговорок: в Google Play этого приложения не оказалось - пришлось устанавливать сторонний магазин открытого ПО F-Droid
, а насчет AppStore
вообще не уверен.
Только вот каждый раз, после работы на каждом устройстве придется открывать программу и держать ее активной, чтобы другое устройство синхронизировало данные. Для ПК, работающего от сети проблем вроде бы нет, но... Электричество иногда отключают, интернет может пропасть или всеми любимый Windows
может уйти в перезагрузку на обновление... А актуальные данные нужны здесь и сейчас!?
И вопрос к аудитории: Всем нравится запускать сначала одно приложение чтобы нормально пользоваться необходимым?
Вы уже поняли, что меня данный вариант не устроил и пришлось «копать» дальше.
Искусство находить ответы
Умение задавать правильные вопросы приводит к нахождению правильных ответов.
Неужели в таком крутом, как говорят, приложении как Obsidian нет плагинов для легкой синхронизации? Они мало того что есть, так их еще и не мало, а помимо этого они отсортированы по рейтингу и количеству загрузок!
Сам по себе Obsidian
не стал бы таким популярным, не будь у него столь высокой возможности расширения и адаптации под самые нетривиальные задачи. Сторонние плагины делают его по истине уникальным для каждого.
Remotely Save
Этот плагин устанавливается как в десктопные, так и в мобильные Obsidian.
Здесь я пошагово расскажу как все настроить:
Этапы установки и запуска я пропущу, поскольку уверен, что читатель смог установить Obsidian
и создать хранилище в нужном месте своего устройства или нескольких устройств, в предвкушении, что сейчас все будет работать!? Будет!
Если Вы будете внимательны!
Делаем копию текущей базы на случай непредвиденных обстоятельтсв! У меня таких обстоятельтсв не возникло, но все же перестраховка лишней не будет.
Название папки-хранилища
Obsidian
должно быть одинаковым на всех устройствах (напрмер у меня папка так и называется: Obsidian).-
Нам нужен
Облчный-сервис
(он же по-русски:Облако
) с достаточным объемом памяти и без риска блокировки:Яндекс.Диск
;Mail.Облако
.
Можно и
Google Drive
иiCloud
или любой другой нормальный облачный-сервис, который предоставляетAPI
удаленного доступа (TeraBox
, например, не подходит, да и скорость соединения низкая).Мой совет: используйте облако, в котором действительно достаточно свободного места, либо создайте отдельный аккаунт только для
Obsidian
. У меня под обсидиан отдельныйЯндекс.Диск
. Создаем в
Облаке
папку с идентичным названием, что и на всех устройствах.
!!! На всех устройствах, включая облако, с которыми будет синхронизация папки должны иметь абсолютно одинаковое название папки-хранилища!!!
Теперь идем в Obsidian → И дале е по порядку:
Слева у вас должны быть показан список заметок и папок, если его нет то открываем кликом сюда:
Жмем на шестеренку внизу этой панели:
Идем в сторонние плагины и включаем их:
Далее идем сюда:
В поиске вводим Remotely Save, а можете сделать так, как я обнаружил этот плагин - ввел sync
и удивился от количества самых разных решений для синхронизации не только папки хранилища, но и много другого, даже можно пистаь себе заметки в Telegram
и они будут прилетать в Obsidian
):
Устанавливаем:
Очень рекомендую почитать описание. Плагин действительно сделан отлично и имеет поддержку самых разных протоколов для синхронизации с разными облачнми сервисами.
-
Настраиваем синхронизацию:
Я буду показывать настройку через
WebDAV
на примереЯндекс.Диск
и коснусьCloud.Mail
. Для настройки через друге сервисы придется разобраться самостоятельно, но, уверен, что там нет ничего за гранью возможного.И так:
У нас есть аккаунт наЯндекс
илиMail.Ru
.
У меня наЯндекс
по умолчанию30Гб
пространства - как-то предложили увеличить, аMail.Ru
по умолчанию дает8Гб
, но когда-то бесплатно и навсегда увеличил его аж до целых100Гб
!!! Иногда бывают подобные акции и желательно их не пропускать.Нам нужен токен доступа из внешнего приложения - иначе говоря нам нужно зайти и сгенерировать ключь доступа. Этот ключ один и достаточно его сгенерировать один раз, а потом использовать для самых разных целей (например: для подключения сетевого диска).
Яндекс:
Идем сюда и генерируем ключWebDAV
:
Этот ключик лучше сохранить в надежном месте, откуда его можно будет потом легко скопировать и переиспользовать. В ином случае каждый раз придется генерировать новый. Если сервис не поддерживает несколько рабочих ключей, то сервисы со старым ключом уже не будут работать.
Mail.Ru:
Идем сюда. Все тоже самое что и для Яндекс
.
Если что-то не понятно, то читаем «Как создать пароль».
-
Самое сложное позади и лишь остальось настроить синхронизацию под себя. О всех настройках расскажу по порядку.
Идем вObsidian
→ в настройки (та самая шестеренка) → слева внизу нажимаемRemotely Save
и начинаем настривать:
Choose A Remote Service
: выбираемWebDAV
;Server Address
:
для Яндекс:https://webdav.yandex.ru/
для Mail.Ru:https://webdav.cloud.mail.ru/
Username
:
для Яндекс: e-mail адрес, без@yandex.ru
(напрмер: obsidian@yandex.ru)
для Mail.Ru: e-mail адрес полностью (напрмер: obsidian@mail.ru)Password
: сюда вставляем сгенерированный токен;Auth Type
: оставляем basic;Depth Header Sent To Servers
: этот параметр отвечает за глубину заголовков каталогов. У меня стоит по умолчаниюdepth='1'
и все в порядке.depth='infinity'
рекомендовать не могу, поскольку сам еще не тестировал. В описании этого параметра сказано, что не все облачные сервисы поддерживают глубокую систему каталогов.Custom Header Sent To Servers
: оставляем как есть;Change The Remote Base Directory
: пишем название папки-хранилища - как на всех устройствах: пишите или копируете Ваше название (у меня например:Obsidian
) и жмете Confirm - в облаке будет создана папка с таким названием, если она не была создана ранее;Check Connectivity
: жмитеCheck
и в правом верхнем углу появится сообщениеChecking...
и послеGreat! The webdav server can be accessed.
, если все было сделано четко по инструкции.
Еще здесь же есть еще несколько полезных настроек:
Schedule For Auto Run
: Расписание автоматической синхронизации — тут кому как удобнее. Я у себя отключил, чтобы не вызывать лишних соединений, особенно это касается телефона;Run Once On Start Up
Automatically: запуск синхронизации при старте программы. Меня устроила опцияsync once after 1 second of start up
;Sync On Save (experimental)
: запускает синхронизацию при любом изменении;Skip Large Files
: опция для тех, кто не хочет загружать в облако большие файлы, рамером более установленного значения;Show Last Successful Sync Time
: полезная опция, которая показывает время последней синхронизации;-
Concurrency
: синхронизация в многопоточном режиме. По умолчанию выделяется 5 потоков из пула соединений. Я для себя опробовал 1, 5 и 10 потоков — рекомендую оставить по умолчанию и изменять это значение только для определенных условий, например: нужно подгрузить всю базу и облака с нуля — 10 потоков будет отлично, при хорошем интернет‑соединении, а если нужно подтянуть данные на старый компьютер, который работает на HDD, то лучше делать это в одном потоке, так же этот вариант подойдет для экономии батареи устройства, правда тут все очень относительно и напрямую будет зависеть от объема получаемых/передаваемых изменений. Остальных настроек я касаться не буду — с минимумом английского и непоменрным желанием оптимизации Вы и сами прекрасно справитесь. Лишь хочу заметить, что
Remotely Save
на каждом устройстве настраивать придется отдельно, но оно и к лучшему. Есть конечно опцияSync Config Dir (experimental)
, которая может сильно помочь одним и сломать конфигурацию другим - её лучше использовать когда на всех устройствах установлены идентичные плагины.
Запустить синхронизацию вручную можно при помощи появившейся кнопки на лейвой панели:
Вот и все, ребята!
Данный туториал протестирован лично мною и прекрасно работает на 3-х устройствах под Linux
, Windows
и Android
. Думаю, что на устройствах Apple
особых отличий не будет. А если возникнут проблемы, то пишите в комментарии.
Комментарии (60)
astrelkov
25.09.2024 08:24+1Спасибо за пост.
Remotely save отличный плагин.
Использую около полугода в связке с Яндекс. Диском на Win10 и iOS. Сбоев не было. Единственное, иногда синхронизация долго стартует на старте приложения iOS.omgiafs
25.09.2024 08:24+1Рекомендую периодически делать бэкап и хранить в сторонке. У этого плагина в описании сказано, что на всех устройствах должны быть одинаковые версии плагина, иначе может быть весело. И мне один раз стало весело, но у меня был бэкап )
glebskvortsov
25.09.2024 08:24+3Почему нельзя просто поставить приложение того же ЯДиска, создать в нем папку под vault Обсидиана, сохранить ее локально и создавать в ней файлы? При каждом сохранении файлов они будут улетать на Диск.
Titsubishi Автор
25.09.2024 08:24+1Можно, только вот в винде диск придётся подключать после каждой перезагрузки. Но даже не это главное - куда важнее то, что обсидиан будет тормозить - облачный диск куда медленнее железного
glebskvortsov
25.09.2024 08:24+1Месяца 3-4 уже пользуюсь такой связкой и ничего не тормозит, вроде.
Titsubishi Автор
25.09.2024 08:24Допускаю. В принципе наши облачники скорость норм дают. Тоже решение как вариант. У меня разные ОС и на всех них я использую obsidian - мне проще без дополнительных движений подтягивать базу с облака. + то что на одном из устройств всегда будет копия актуальной базы. Все же на все 100% полагаться только на облако тоже не могу, а база иногда бывает нужна оффлайн.
AlexZhidkov
25.09.2024 08:24Точно так же уже год живу. Но про такой метод писать не интересно-слишком просто. Один минус - только десктопы с установленным ЯД.
mystdeim
25.09.2024 08:24+3Ого syncthing убрали из android play? Интересно за что использую его для синхронизации между ноутом/телефоном/домашним nas из rpi/vps. Работает отлично, года 3 эту связку использую, так как гугл перестал бесплатно фотки хостить, синкаю их с телефона на nas тоже с помощью syncthing
xaphoon777
25.09.2024 08:24+3Да я тоже использую и доволен. Действительно выпилили из плеймаркета. Видимо недавно, так как я ставил оттуда не далее чем несколько месяцев назад. Не согласен с автором, что надо запускать синхронизацию каждый раз перед запуском обсидиана. Достаточно сделать так чтобы андройд не прибивал syncthing по электропитанию и другим оптимизациям.
mystdeim
25.09.2024 08:24угу, единственное неудобство, после рестарта андройда вручную запускую, может где-то настройку пропустил. Но я перегружаюсь редко висит себе в фоне и когда к wifi подключается телефон синкается. Синхронизация vault obsidian копейки, я думал будет сжирать батарейку на синхронизацию фоток/видео, но в сравнении с тем же инстаграмом потребление смешное
K_AA
25.09.2024 08:24Чем-то отличается принципиально от resilio sync? По описанию вроде похоже.
Я им всегда пользовался, он есть в магазинах, позволяет на внешних машинах держать шифрованную копию каталога (типа для увеличения доступности).
Titsubishi Автор
25.09.2024 08:24Да, для домашнего NAS отличное решение. Я и сам удивился, что из play market его убрали, при том что это ПО с открытыми исхожгиками , но зато узнал про магазин открытого и бесплатного ПО F-Droid.
Hyperplasia
25.09.2024 08:24+2А кто то веб версию obsidian использует? Есть ли проблемы с ней?
ASD2003ru
25.09.2024 08:24+2Интересно мне одному с syncthing так везло, что бывают файлы с конфликтом?
AntonMartynenko
25.09.2024 08:24+1У меня такое происходило, не могу сказать, что часто. Я с такой политикой приложения согласился, настроил заметку с query, чтобы находить такие файлы и решать конфликты руками.
Вот такой блок кода пишете, в ответ получите список всех файлов с конфликтами синхронизации Syncthing.
```query .sync-conflict ```
Если вас не устраивает такое, то можно в настройках сделать авто-мёрджи по правилам, думаю сможете найти самостоятельно в интерфейсе.
yal0
25.09.2024 08:24У меня с яндексом работает, а с mail.ru выдает ошибку. В настройках Check Соnnectivity выдает ОК, а при синхронизации получаю ошибку invalid response: 400 bad request
В какую сторону копать?
Titsubishi Автор
25.09.2024 08:24Попробуй имя пользователя без @mail.ruсделать. Мб поменяли что-то. Эта ошибка говорит о том, что запрос не валидный - возможно опечатка в логине или пароле, или вообще какие-то сетевые программы в фоне могут что-то с DNS делать.
Phillipoque
25.09.2024 08:24+1У Яндекс Диска чрезвычайно капризный и ненадежный WebDav. Лично у меня за пару дней тестирования три раза полностью уничтожался весь vault - благо он тоже был тестовый :-)
Syncthing почему-то очень жадно кушает электричество на моем планшете - причем на смартфоне все хорошо.
Остановился на OneDrive, никаких проблем за прошедший месяц.
Кстати, у плагина RemotelySave есть PRO-версия, которая среди прочего позволяет использовать родной API Яндекс Диска, а не WebDav. Пока что PRO-версия в статусе беты и бесплатна - на сайте написано, до 30 сентября :-)Titsubishi Автор
25.09.2024 08:24Я через webDAV уже довольно давно файлы гоняю и ниразу ничего не отваливалось и файлы не пропадали. Странно... Быть может ты что-то делаешь не так? Уверен, если покупаться, то причина найдётся.
Phillipoque
25.09.2024 08:24Потратив пару минут на гугление, нетрудно обнаружить, что жалобы на яндексовый WebDav носят вполне себе массовый характер.
Titsubishi Автор
25.09.2024 08:24У меня были проблемы с первоначальной настройкой, когда занимался этим впервые, но разобравшись уже не первый год пользуюсь и ниразу проблем не было. У меня все стабильно, возможно потому, что я создал только один токен, а лишние удалил. Через веб дав юзаю как сетевой диск и в Remotely Save.
ya_eklera
25.09.2024 08:24Пыталась настроить синхру компа и макбука, выдает вот такое...
Titsubishi Автор
25.09.2024 08:24+1Все очень просто - у тебя в настройках выставлена синхронизация при изменении более 50% файлов. При этом у тебя 12 из 13 файлов были модифицированы или удалены. Собственно так и написано. Смотри, тебе надо сесть за ПК с самой новой версией базы, зайти в облако и сделать папку с базой пустой. Потом запускаешь синхронизацию. За другим ПК тоже удаляешь базу на самом ПК, чтоб папка стала так же пустой и запускаешь - все подтянется. Скорее всего ты руками закинул базу в облако, отсюда и конфликт.
Либо вот настройка, которой можно это исправить:
RomanM05
Настроил через этот плагин автосинхронизацию через облако Микрософта. Редко, но постоянно отваливается аутентификация и у меня холодный пот, когда ожидаю, что может что-то удалиться.
В качестве решения норм, но хотелось бы что-то получше и надежнее.
kiba
>но хотелось бы что-то получше и надежнее.
хранить всё в git? https://github.com/Vinzent03/obsidian-git сам не пробовал ещё, но планирую
3draven
syncthing можно использовать.
Titsubishi Автор
Можно. Но куда удобнее, когда последняя версия базы всегда доступна хоть откуда и без лишних телодвижений. Я пробовал - мне очень не зашло.
Miller777
А почему вы думаете, что она не доступна с Synthing?
Он сам по себе работает в фоне, как служба. У меня 3 ПК на винде, 1 на linux, и 2 телефона на Android. Все замечательно работает в фоне, независимо от Obsidian. База везде всегда актуальная. Раз настроил и не лезу туда.
А после событий последних лет ко всяким облакам отношусь очень скептически: сегодня оно есть, завтра денег надо заплатить, послезавтра его нет...
3draven
Да, он синкает махом и пашет отлично. Не знаю с чего чуваку не зашло, я использую.
Titsubishi Автор
Гит всего 500 мб тебе даст под проект. Сам как думаешь - хватит?)
quakin
А есть пруф на лимит 500мб на гибхабе?
У меня получилось нагуглить подобный лимит лишь на сервис "github pages".
Titsubishi Автор
Сам не проверял, поскольку несколько раз слышал это от разных людей. Попробуй затестить - может действительно ограничение только на размер одного файла действует. Прям любопытно стало.
difhel
https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-large-files-on-github#repository-size-limits
Пишут, что 5 гигабайт спокойно выдадут, а дальше могут возникнуть вопросы. Но строгих лимитов нет.
Titsubishi Автор
Спасибо! Тоже вариант получается. Вот только гитхаб тоже в зоне риска по блокировка, поскольку уже появились отечественные репы.
sirojiddin13
Ну делаешь зеркало в несколько хостингом, что бы не страшно было
egribanov
Можно создать второе пространство с новым репозиторием
Titsubishi Автор
Как и в облаке. Все же лучше заранее достаточно места выделить, чтоб потом не таскаться с хранилищем.
omgiafs
Не путайте git с Github. Гит можно(нужно) на своём сервере держать. А если на чужом и контент - не код, а заметки, то только в зашифрованном виде.
bromzh
iPad/iPhone не дружит с ним. Я добавил синхронизацию этих девайсов через iCloud, но iCloud плохо дружит с гитом, бд гита портится постоянно
Titsubishi Автор
OneDrive? Зачем так рисковать, если есть сервисы ближе, больше и без рисков удаления? В твоём случае дело точно не в плагине, а в самом OneDrive - скорее всего аутентификация настроена на определённое время жизни ключа, по истечении которого выкидывает + вероятно стоят ловушки от роботов, чтоб не ddos'или. WebDAV в этом плане удобнее. Я в свое время облака через него как сетевые диски прямо в "Мой кудахтер" добавлял. У меня вообще никаких проблем нет, например.
shikhov
По этой же причине отказался от него. Использую селф-хостед livesync, работает неплохо: https://github.com/vrtmrz/obsidian-livesync
Halt
Я сегодня несколько часов трахался с ее настройкой, ну не выходит каменный цветок и все тут. При первой загрузке данные вроде улетают в диван, но буквально первая же синхронизация проваливается. Пробовал даже под админом всея CouchDB делать, один черт. Ставил вот по этой инструкции.
Вы с таким не сталкивались?
LeshaRB
Купить полноценную версию
Скупой алии дввжды
Titsubishi Автор
Гениально!) xD зачем не платить, когда можно за деньги)
vikarti
Одна из проблем - купить из России сейчас не очень просто (хотя...если вы хоть как эту проблему решили - пройдет и тут и оно того стоит).
У меня именно платная подписка, копейки ж (как и например Catalyst license - а потому что поддержка разработчиков очень хорошего ПО, да - бывают сложности но у меня у меня не настолько все плохо с деньгами чтобы не иметь возможности себе это позволить, если же случится так - есть вариант с syncthing готовый и проверенный).
Вариант с Syncthing мне - не понравился тем что конфликты устроить у меня вполне себе не раз получалось (а понравился тем что этот вариант нормально в фоне на андроид работает, в отличии от штатного)
Live Sync кастомные - как то не проверялись.
Git Sync c некоторого момента использую чисто иметь копию на своем сервере Forgejo (форк Gitea)(и уже получилось поймать ругань что мол .git покорежен - видимо гит не оценил что винда на том компьютере где это мной тестировалось решила в синей экран).
LeshaRB
Я ушел с обсидина
И купил upnote, и не жалею
До этого было wiznote, nimbus (сейчас сменил название) , Обсидиан
Upnote зашёл на 100500 синхронизация, телефон подджриваке
20-25 уе и полностью про версия
Я с Беларуси, санкции нас тоже коснулись.....
Titsubishi Автор
Поддерживаю! Если есть возможность отблагодарить разрабов за разработку классного ПО, то это действительно стоит сделать. Тем более они даже не лочат сторонние плагины синхронизации, хотя могли бы - тем более достойно. Но мы сейчас живём в тех реалиях, что приходится выкручиваться и искать пути решений для достижения результатов. В моем примере конфликтов можно полностью избежать определи для себя всего пару настроек, а то и одной хватит.
amario
Я без облака синхроню между телефоном и ноутом.