这里推荐的方法,是通过一个叫做「Self-hosted LiveSync」的插件,GitHub 上面的项目名称叫「 obsidian-livesync」。
不仅支持所有平台,而且可以做到“毫秒级自动同步”。可以做到,你在电脑上面写笔记,手机上也会同步跳出文字。
但部署有一定门槛,需要有一个自己的服务器,可以是 NAS、云服务器,或者是一台不关机的电脑(例如 Mac Mni)。如果你愿意折腾,甚至可以用旧的安卓手机来做服务器。
基础介绍
具体原理:
服务器上部署一个 CouchDB。CouchDB 是一个数据库,只同步文件的增量变化(也就是你修改的部分,会被同步。而其他没有改动的部分,就不进行同步)。
优点:
- 完全自动化:传统的同步插件(例如 Remotely Save)需要手动点同步,而这个脚本完全自动;
- 作为数据库的CouchDB 支持版本管理,可以有效防止文件冲突导致的文件丢失;
- 毫秒级同步:由于只同步改动的数据,数据量很小、速度很快;
- 绕过了 iOS 的系统同步限制,过程优雅。
部署思路:
- 中心端(NAS、VPS、电脑、树莓派,甚至是旧的安卓手机):部署 CouchDB
- 客户端:各个平台的 obsidian,安装「Self-hosted LiveSync」,并且开启同步。
具体流程
一、部署 CouchDB
推荐通过 Docker 部署一个 CouchDB 容器,所谓「 Docker 」是一个开源的应用容器,可以解决不同设备、不同平台上部署东西的时候,在我的电脑上可以正常运行,而在你的电脑上却运行失败。
这里以 2026 年的群晖 NAS 为例,现在群晖上面自带「Docker」,不过新版群晖上,叫做 「Container Manager」。虽然名字不一样,但是内容基本是一样的。
(如果你不是群晖、不是NAS,可以搜索下如何部署Docker,过程并不复杂)
- 打开「Container Manager」,点击【项目】—【新增】;
- 输入项目名称(例如 obsidian-sync),选择一个部署路径(推荐在 docker 文件夹里,创建一个新文件夹叫做「obsidian-sync」。然后在其下创建两个子文件夹,分别叫做「data」和「stc」;
- 来源选择「创建 docker-compose. yml」;
- 填写代码:
version: '3.8' # 建议使用 3.8 版本,兼容性更好
services:
couchdb:
image: couchdb:latest
container_name: obsidian-couchdb
environment:
- COUCHDB_USER=admin # 【必须修改】这是你数据库的管理账号,建议改成只有你知道的名称
- COUCHDB_PASSWORD=your_password # 【必须修改】这是数据库的密码,务必设置一个强密码
ports:
- "5984:5984" # 前面的 5984 是群晖的本地端口,如果没被占用,保持默认即可
volumes:
# 这里是关键:冒号左边是你在群晖 File Station 里创建的真实路径
# 如果你在 docker 下建了 obsidian-sync 文件夹,填入如下路径:
- /volume1/docker/obsidian-sync/data:/opt/couchdb/data
- /volume1/docker/obsidian-sync/etc:/opt/couchdb/etc/local.d
restart: always
里面的账号、密码,必须要你自己填写下。
- 启动项目,创建 CouchDB 容器
这里很多人都可能会创建失败。因为创建的过程中,需要链接 docker 的服务器,而国内的没办法直接连接。解决方法也很简单,使用一些镜像的加速地址。例如:
- https://docker. 1ms. run
- https://docker.xuanyuan.me
- https://hub.rat.dev
- https://docker.m.daocloud.io
- https://docker.amingg.com
NAS 上面的设置方法,是打开「Container Manager」—【注册表】—【设置】,点击正在使用的「存储库」,选择【编辑】—【启用注册表镜像】—【新添】。把上面的加速地址,随便填上去几个。
其他服务器怎么使用镜像地址,你可以问一下 AI。
这个时候,你再启动项目创建 CouchDB 容器,通常就可以成功创建了!
- 修改 CouchDB 的配置文件
这个时候,obsidian 还不能直接连上 CouchDB,需要修改一下配置文件。
打开之前创建的「obsidian-sync」文件夹,打开下面的 etc 文件夹。在这里创建一个叫做「local. ini」的文本。用文本编辑器打开,内容写:
[httpd]
enable_cors = true
[cors]
origins = *
credentials = true
methods = GET, PUT, POST, HEAD, DELETE
headers = accept, authorization, content-type, origin, referer
- 保存上述文件后,重启 CouchDB 容器
这样,服务器方面就部署完毕。
二、安装插件
然后是各平台的「Self-hosted LiveSync」插件。
打开「obsidian」—【设置】—【第三方插件】—【社区插件市场】。搜索「Self-hosted LiveSync」,点击安装。
安装后,进入【选项】,填写相关信息,包括:
- URL(记得填端口号,例如「内网 IP:5984)
- 账号和密码(就是前面代码里面,让你替换的)
- 仓库名(到时在 CouchDB 里创建的数据库就会是这个名字)
- 端对端加密(建议打开)
然后就是根据提示,一步步来操作。
三、打开自动同步
刚安装好的时候。默认是不打开自动同步的。这个时候,进入到插件的【选项】,点击那个同步图标,根据自己的需求进行设置。
如果你懒得设置,可以直接选择【预设】—「LiveSync」
如果你怕同步太频繁,那就选【定期与批量】
总之,看你自己
四、其他平台同步
在其他平台的obsidian上,也安装「Self-hosted LiveSync」插件。
然后,打开你最开始安装插件的 obsidian 的「Self-hosted LiveSync」选项(注意是最开始安装的),然后选那个巫师的图标(我这个版本是图标的第二个),找到【设置其他设备】。
你可以复制URL发给第二第三台设备,也可以是打开QR(也就是是二维码)让第二第三台设备扫。
总之,让其他平台的设备打开第一条设备的URL,并且跳转到Obsidian,这样你的设置内容,就被同步了过去。
最后,就是根据引导,进行简单的设置。
恭喜你!你拥有了一个毫秒级的全平台同步!!!