Syncthing 使用教程:跨设备文件同步与 Obsidian 联动指南
目录
📖 导读:这篇文章面向第一次接触 Syncthing 的新手小白。我会从"为什么需要它、它和网盘有什么区别"讲起,把 P2P 同步、设备配对、文件夹共享这些概念都用通俗的语言讲清楚。全文按 Windows → Android → iOS → Linux/macOS 的顺序,覆盖你手头几乎所有设备;最后一章专门讲如何用它让 Obsidian 笔记库在多台设备间自动同步——这也是我实际使用它的核心场景。文中所有操作步骤都可以照着点,遇到问题直接翻文末的速查表。
如果你平时用印象笔记、语雀、石墨这种"网页版"笔记,会一直有一种"文件不在自己手里"的不安全感。Obsidian 不一样:它的所有笔记就是本地的一个个 Markdown 文件,你完全拥有它们。而 Syncthing 就是帮你把这些文件在多台设备之间自由同步、但不经过任何第三方云盘的工具。
1. 什么是 Syncthing?为什么不用网盘?
1.1 一句话概括
💡 注(Syncthing):Syncthing 是一个开源、免费、点对点(P2P)的文件同步工具。它在你的设备之间直接传输文件,不经过任何云服务器。你的文件"始终在自己手里"。
你可以把它理解成:你所有的设备组成了一个"私密聊天群",文件就是群里的消息,设备之间直接互传,群外的人(包括任何公司)都看不到内容。
1.2 和网盘(坚果云、OneDrive、百度网盘)对比
| 特性 | 网盘 | Syncthing |
|---|---|---|
| 数据存储位置 | 上传到对方的服务器 | 只在你自己的设备之间传输 |
| 数据隐私 | 文件在他人服务器上 | 文件始终在自己设备上 |
| 同步速度 | 受服务器带宽限制,国内大文件常被限速 | 局域网内极快;公网走 P2P,取决于双方网络 |
| 免费额度 / 文件大小限制 | 常见 10~20GB 免费额度,或限单文件大小 | 完全免费、无额度、无单文件大小限制 |
| 同步冲突处理 | 有的会静默覆盖 | 双方同时改同一文件时,冲突版本会保留一份副本 |
| 开源 | 否 | 完全开源,可审计代码 |
💡 注(为什么在国内 Syncthing 格外好使):网盘在国内常面临上传下载限速、某些文件类型被和谐(分享"学习资料"被秒删)、隐私疑虑等问题。Syncthing 的同步流量是设备之间直连的,不经过网盘厂商的服务器,所以既没有"审核删除",也没有"会员限速"这一说。它在国内互联网环境下依然能用,原因见下一节。
1.3 三个核心概念:设备直连、中继、全局发现
这是 Syncthing 文档里出现频率最高的三个词,搞懂它们,后面的配置你就能自己举一反三。
① 设备直连(P2P,点对点)
两台设备如果能互相直接访问(比如在同一 WiFi 下,或一方有公网 IP),Syncthing 就直接在两台设备之间传文件,速度就是你的局域网/宽带速度。
② 中继服务器(Relay)
如果两台设备无法直连(最常见:两边都在家用 NAT 路由器后面,都没有公网 IP),Syncthing 会退而使用一个公开的"中继服务器"帮两边转发数据。速度会慢一些,但保证你能同步上。
💡 注(NAT / 路由器):绝大多数家庭宽带上网时,你的设备不是直接暴露在公网上,而是躲在路由器后面,公网只能"看到"路由器的地址。两个都躲在路由器后面的设备想直连,就需要"打洞"(NAT 穿透)——能打洞成功就直连,打洞失败就退回中继。你不需要理解打洞的细节,只要知道 Syncthing 会自动尝试"先直连、不行再中继"就行。
③ 全局发现(Global Discovery)
Syncthing 没在互联网上建"文件服务器",但需要知道"对方设备现在在哪个 IP"。这个信息由一个发现服务器来广播——它只记录"设备 ID → 当前 IP",不接触你的文件内容。Syncthing 自带若干默认的公开发现服务器,所以你开箱即用,不需要自己搭建任何服务器。
💡 注(一个准确的类比):发现服务器 = 通讯录,帮你查到对方地址;中继服务器 = 快递中转站,无法直接送达时代为转交;而文件本身始终只在你和设备之间流动。Syncthing 默认的发现服务器和中继服务器在国内均可访问,这也是它能"开箱即用"的原因。
1.4 同步流程一句话
把 Syncthing 装到两台设备上 → 互相"添加设备"配对 → 把一个文件夹"共享"给对面 → 之后这个文件夹里的任何改动,都会自动同步到另一台设备。
2. Windows 安装与初始化(第一次上手)
2.1 下载
打开 Syncthing 官网下载页:https://syncthing.net/downloads/
- 选择 Windows 分类下的 64 位版本(文件名形如
syncthing-windows-amd64-v1.29.x.zip),下载。 - 官网在国内访问偶尔慢,如果打不开,可以去 GitHub Releases 页面下载:https://github.com/syncthing/syncthing/releases,找最新的
syncthing-windows-amd64压缩包。
💡 注(版本号):Syncthing 目前稳定版在 1.29.x(2026 年 8 月)。教程里的操作界面在不同小版本间基本一致,版本新一点旧一点不影响照做。
2.2 解压与启动
- 把下载的 zip 解压到一个固定位置,比如
C:\Tools\syncthing。 - 进入解压出来的文件夹,双击
syncthing.exe。 - 第一次运行,会弹出一个黑窗口打印日志,不要关掉它(关掉等于退出 Syncthing)。几秒后,它通常会自动打开浏览器,进入 Web 管理界面:http://127.0.0.1:8384
💡 注(Web 管理界面):Syncthing 本体是个后台服务,它不提供传统软件那样的图形窗口,而是在你的浏览器里提供一个管理页面(默认地址
127.0.0.1:8384)。所有配置都在这个网页里完成。别关那个黑色命令行窗口,它是服务本体。
如果浏览器没自动打开,手动在浏览器地址栏输入 http://127.0.0.1:8384 即可。
2.3 初始安全设置(强烈建议做)
打开管理页面后,右下角会提示"未设置密码,局域网内任何设备都能访问"。点右上角「操作 Actions」→「设置 Settings」:
- 常规 General 标签页:
- 把「设备名 Device Name」改成好认的名字,比如
Windows-台式机。 - 把「地址 Address」保持
127.0.0.1:8384不动(管理页面只在本机可访问,更安全)。
- 把「设备名 Device Name」改成好认的名字,比如
- GUI 认证 GUI Authentication 标签页:
- 设置一个用户名和密码。这样局域网内其他人无法通过你的 IP 打开管理页面。
- 点「保存 Save」。
💡 注(为什么默认只监听 127.0.0.1):Syncthing 默认管理界面只允许"本机"访问(127.0.0.1),也就是说只有你在这台电脑上能打开配置页面。这样即使没设密码,外人也进不来。设密码是双保险,也方便你以后从手机浏览器管理。
2.4 开机自启(Windows)
- 在 Web 管理界面点右上角 「操作 Actions」→「安装/更新安装为 Windows 服务 Install/Upgrade to Windows Service」。
- 按提示输入当前 Windows 用户的管理员密码(或确认 UAC 弹窗)。
- 安装成功后,Syncthing 会作为系统服务在后台运行,开机自启、无需登录也能跑。此时那个黑色命令行窗口可以关掉了(服务在后台接管)。
💡 注(服务 vs 前台运行):作为"Windows 服务"运行后,Syncthing 在后台常驻,不占窗口,开机自动启动。这是最省心的方式。如果你不想装成服务,也可以让那个黑窗口一直开着,效果一样只是多一个窗口。
2.5 第一步:先在 Windows 本机创建一个共享文件夹
- 管理页面左侧点 「添加文件夹 Add Folder」。
- 填三样东西:
- 文件夹 ID(Folder ID):一个英文标识,比如
obsidian(之后配对时要保持一致,见下文)。 - 文件夹路径(Folder Path):选择你要同步的目录,比如
C:\Users\你\Documents\ObsidianVault。 - 其他保持默认即可。
- 文件夹 ID(Folder ID):一个英文标识,比如
- 点「保存 Save」。
此时文件夹还没有"共享"给任何设备,因为目前只有你这一台设备。下一步我们添加手机,然后把文件夹共享过去。
3. Android 安装与设备配对(最常用的组合)
手机端是大多数人用 Syncthing 的主要场景(走路、通勤时掏出手机看笔记)。
3.1 安装 Syncthing for Android
- 推荐渠道:F-Droid 应用商店(开源的安卓应用市场)搜索 Syncthing,或 GitHub 上 Syncthing/syncthing-android 仓库的 Releases 页下载 APK。
- Google Play 上也有,但因为国内网络原因可能不便下载。
- 安装后首次打开,授予存储权限(需要读写你指定的笔记文件夹)。
💡 注(Syncthing 安卓客户端):它叫 Syncthing(官方),或 Syncthing-Fork(社区加强版,功能更多)。两者都能和电脑版互通。新手用官方版即可,追求更多功能可以用 Fork 版。
3.2 把手机和 Windows 配对
Syncthing 配对的核心是**「设备 ID」**——每台设备一个唯一标识,格式是一长串字母数字。
在手机上看电脑的设备 ID:
- 电脑 Web 管理页面右上角点 「操作 Actions」→「显示 ID Show ID」,会弹出一个二维码和一段 ID 文本。
- 手机 Syncthing 主界面点右下角**加号(+)**或「添加设备 Add Device」。
- 点二维码图标,扫描电脑屏幕上那个二维码,电脑的信息(设备名 + ID)会自动填入。
- 点「保存」。
在电脑上确认手机的请求:
- 手机添加电脑的同时,电脑 Web 界面右上角会弹出提示:“发现新设备,是否添加?”
- 点「添加设备 Add Device」,确认设备 ID 无误,保存。
💡 注(为什么必须扫码/粘贴 ID 而不是搜索):Syncthing 不依赖账号体系,它靠设备 ID 作为身份凭证。对方持有你的设备 ID,才能向你发起同步。二维码让这一步既安全又省事。
至此,两台设备配对完成。此时它们已经"认识"了,但还没开始同步任何文件。
3.3 把共享文件夹同步到手机
在电脑上把文件夹共享给手机:
- 电脑 Web 界面,点左侧那个你建的文件夹(比如
obsidian)。 - 在「共享(Sharing)」标签页,勾选手机设备。
- 保存。
在手机上接收这个文件夹:
- 手机 Syncthing 会收到"新文件夹共享"的提示,点「接受 Accept」。
- 设置手机端的本地路径(文件夹放哪里),比如
/storage/emulated/0/Documents/Obsidian。 - 确认后,手机开始从电脑拉取文件。
💡 注(文件夹 ID 的作用):同步时 Syncthing 靠「文件夹 ID」来匹配"两边是同一个文件夹"。电脑上文件夹 ID 是
obsidian,手机上接受共享时它也会是obsidian,两边就能对上。文件夹 ID 必须在两端一致,而"文件夹路径"在每台设备上可以不同(各放各的位置)。
同步开始后,在手机 Syncthing 主界面能看到传输进度。等首次全量同步完成后,改动任何一端,另一端几秒内自动更新——如果你愿意,到这里已经能用了。
💡 注(首次同步后怎么验证):先在手机端 Syncthing 里看文件夹状态变成"已同步 Up to Date",再在电脑端往文件夹里新建一个测试文件,看手机端是不是几秒内出现了。这比盲目相信配置靠谱得多。
4. iOS:特殊说明(Synctrain / Möbius Sync)
苹果生态比较特殊:Syncthing 官方没有 iOS 客户端(因为 iOS 限制后台运行,官方不做)。但目前有两款第三方方案可用。
4.1 首选:Synctrain(开源免费,推荐)
- Synctrain(GitHub 上叫 Sushitrain)是目前推荐的 iOS Syncthing 客户端:完全开源(MPLv2)、免费、无流量限制。
- 它在手机上运行完整的 Syncthing 内核(不是网页套壳),功能和其他平台一致。
- 支持选择性同步(只同步需要的文件)、图片/视频浏览、照片备份等,比付费的 Möbius 还多。
- App Store 上架,直接搜索 “Synctrain” 下载即可;如果所在地区 App Store 搜不到,可以走 TestFlight 渠道(关注开发者 @tvandervorst 的发布说明)。
4.2 备选:Möbius Sync(付费、历史悠久)
- Möbius Sync 是老牌方案,App Store 上架,免费版有 20MB 流量限制,Pro 一次性买断(约 6 美元)。
- 注意:它的内置 Syncthing 内核更新较慢(目前还停留在 1.28.x,而桌面端已是 1.29.x),且闭源。如果你要长期使用,更推荐 Synctrain。
💡 注(iOS 后台同步的固有限制):无论用哪款,iOS 都不允许 App 长时间在后台联网。iOS 上同步通常要打开 App 才会触发(或靠系统在特定时机短暂唤醒)。所以"iOS 自动、随时同步"做不到像 Android 那样实时——这是苹果系统的限制,不是软件能解决的。合理预期:iOS 上"打开 App 即同步",Android/电脑上"实时同步"。
4.3 iOS 与电脑配对
配对逻辑和 Android 一样:在电脑「操作 Actions → 显示 ID」处扫码,或在 iOS App 里输入电脑的设备 ID。配对完成后同样在电脑端把文件夹共享给 iPhone 即可。
5. Linux / macOS 补充(可选)
如果你是 Linux 或 macOS 用户,Syncthing 同样支持,而且配置逻辑和 Windows 完全一致(装好 → 打开管理页面 → 配对 → 共享文件夹)。这里只给关键安装步骤。
5.1 安装
Debian / Ubuntu:
sudo apt install syncthing
macOS(Homebrew):
brew install syncthing
或任意平台:从官网/GitHub 下载对应压缩包,解压后运行 syncthing。
5.2 启动与管理页面
syncthing serve
启动后同样访问 http://127.0.0.1:8384,之后的配对、共享步骤和 Windows 章节完全一样。
5.3 开机自启
Linux(systemd,以 Ubuntu 为例):
# 启用用户级 systemd 服务,开机自启(无需 sudo,推荐)
systemctl --user enable syncthing.service
systemctl --user start syncthing.service
macOS(launchd):Syncthing 官方文档提供了一份 launchd plist 示例(syncthing.plist),把它放入 ~/Library/LaunchAgents/ 并 launchctl load 即可。想省事的话,也可以直接用 brew services start syncthing。
6. 实战:让 Obsidian 笔记库跨设备自动同步(核心应用)
前面都是 Syncthing 本身的操作,这一章把它和 Obsidian 组合起来——这也是我自己的日常用法。
💡 注(Obsidian 是什么):Obsidian 是一款本地优先的 Markdown 笔记软件。你的笔记就是电脑/手机上的一堆
.md文件(称为 Vault 库),Obsidian 只是"打开"这堆文件的编辑器。正因为笔记是普通文件,Syncthing(或 Git)才能直接接管同步。
6.1 整体思路:三步
① 让 Obsidian 的 Vault 文件夹 = Syncthing 的共享文件夹
② 在每台设备上把 Syncthing 指向这个文件夹
③ 用任意一台设备上的 Obsidian 打开它 → 编辑自动同步
6.2 第一步:Windows 上建好 Vault 并共享
- 在 Obsidian 里新建一个 Vault,位置比如
C:\Users\你\Documents\ObsidianVault。 - 回到 Syncthing Web 界面,如果还没建过这个文件夹,就添加文件夹,文件夹 ID 填
obsidian,路径填这个 Vault 目录。 - 在「共享」里勾选你的手机设备。
- 保存后,整个 Vault 就会被同步到手机。
💡 注(同步整个 Vault 还是子文件夹?):直接同步整个 Vault 根目录最省心——Obsidian 的插件配置(
.obsidian文件夹)、附件、模板全都会一起同步过去,手机和电脑的笔记体验一致。不要只挑一个子文件夹同步,那会让配置分裂。
6.3 第二步:Android 上打开同一个 Vault
- 手机接受共享后,Vault 的文件就到了你设置的手机路径下,比如
/storage/emulated/0/Documents/Obsidian。 - 在手机安装 Obsidian(安卓版)。
- 打开 Obsidian →「打开文件夹作为库 Open folder as vault」→ 选择这个路径。
- 完成后,手机 Obsidian 里看到的就是和电脑完全一样的笔记库。
关键设置(Android):为了让"电脑一改,手机马上变",在手机 Syncthing 里做两个设置:
- 文件夹观察者(Folder Watcher):打开。这样手机端的 Syncthing 会实时监听文件夹变化,改动立刻触发同步,不用等默认的扫描间隔。
- 主文件夹模式(Master Folder):保持关闭(默认)。这个模式是"单向同步"用的,Obsidian 双向编辑要关掉它。
💡 注(为什么这两个设置重要):Syncthing 默认每隔几十秒扫描一次文件夹。开着"文件夹观察者"后,改动会即时触发同步,手机和电脑之间的编辑几乎无缝。而"主文件夹模式"是单向的(电脑只推给手机),开着它会禁止你在手机上编辑,Obsidian 双向使用必须关掉。
6.4 第三步:写完即同步,无感体验
配置完成后,日常就是这样:
- 在电脑 Obsidian 写笔记 → 保存 → Syncthing 自动把改动推到手机。
- 出门在地铁上掏出手机 Obsidian 接着写 → 保存 → 回到电脑前文件已经是最新。
- 没有任何"上传/下载"按钮,一切自动。
💡 注(冲突怎么办):如果两台设备同时改了同一个文件(比如电脑和手机同一分钟都在编辑
日记.md),Syncthing 不会静默覆盖——它会保留一份名为日记.sync-conflict-20260814-123456-ABCDEFG.md的冲突副本。手动看一遍、合并内容、删掉冲突副本即可。日常单人使用几乎遇不到。
6.5 进阶:用 .stignore 避免"视图状态"互相覆盖(强烈建议)
Obsidian 每个 Vault 里都有一个隐藏的 .obsidian 文件夹,其中 workspace.json 记录的是当前窗口布局(哪个笔记打开着、面板怎么排)。这类"状态文件"如果被同步到另一台设备,会导致你在手机上打开时,布局是电脑上残留的,体验很怪。
解决办法:在共享文件夹根目录创建一个 .stignore 文件,让 Syncthing 不同步这个状态文件:
// 忽略 Obsidian 每台设备各自独立的窗口布局状态
.obsidian/workspace.json
.obsidian/workspace-mobile.json
💡 注(.stignore 是什么):Syncthing 支持在一个共享文件夹里放一个
.stignore文本文件,按行写"忽略规则",被忽略的文件不会同步。它和 Git 的.gitignore思路一样。上面的规则让每个设备保留自己的窗口布局,同时笔记正文、插件、配置照常同步。小提示:
.stignore修改后需要重启 Syncthing 或在管理界面点"重新扫描"才生效。不要把它共享到手机(它自己定义忽略规则,不该被传播)。
6.6 一个完整的目录结构示例
C:\Users\你\Documents\ObsidianVault ← Windows 上的 Vault(= Syncthing 共享文件夹)
├── 笔记
│ ├── 日记.md
│ └── 读书笔记.md
├── 附件
│ └── 图片.png
├── .obsidian/ ← Obsidian 配置(会同步,除 workspace 状态外)
├── .stignore ← 忽略规则(不参与同步)
手机上接收后,/storage/emulated/0/Documents/Obsidian 就是上面这个结构的镜像。两边 Obsidian 打开各自的路径,笔记完全一致。
7. 安全与隐私配置(进阶)
默认配置已经不错,但这几个开关值得打开,尤其是你同步的笔记比较私密时。
7.1 给管理页面加 HTTPS
在「操作 Actions → 设置 Settings → GUI」里,把「使用 HTTPS」打开。这样管理页面走加密连接,局域网内不会被明文窥探。
7.2 启用文件夹加密(可选)
Syncthing 支持 不受信任的设备 概念:如果某台设备(比如临时借给别人的电脑)不被信任,可以为它启用文件夹加密,这台设备上存的是加密后的文件,它看不到明文内容,但仍能帮你存储和转发。在「设置 → 设备 → 该设备的共享文件夹 → 启用加密」里开启。日常自己的设备用不到,知道有这个选项即可。
7.3 只读共享(单向同步)
如果有一台设备只想"看"、不想让它"改"(比如客厅的展示平板),可以:
- 在电脑「设置 → 设备 → 该设备 → 共享文件夹 → 高级 → 只读」勾上。
- 或在该设备端把该文件夹设为「仅接收 Receive Only」模式。
7.4 关闭不用的设备与中继
- 在「设置 Settings → 连接 Connections」里,可以取消勾选不用的默认全局发现服务器 / 中继服务器,进一步减少对外暴露。
- 前提是你和你的设备之间能直连(例如在同一个局域网)。如果是异地同步,通常还是需要中继兜底。
8. 常见问题速查表
| 问题 | 原因 | 解决办法 |
|---|---|---|
| 两台设备一直显示"连接中 Connecting" | 无法直连,正在尝试中继 | 等一会儿,通常会自动切到中继;确认两台设备时间同步(设备时间不准会导致 TLS 握手失败) |
| 同步速度很慢 | 走的是中继服务器(两边都无公网 IP) | 在「设置 → 连接」里看是否"通过中继 Relay";无法直连时中继速度是正常现象 |
| 手机收不到电脑的文件夹共享请求 | 手机端没有确认,或未配对 | 检查手机端「添加设备」是否完成;电脑端文件夹「共享」是否勾选了手机 |
| 提示"设备 ID 不匹配 / 证书错误" | 设备时间不正确,或 ID 输入有误 | 校准设备时间;重新扫码/核对设备 ID |
| 同步时提示"文件夹冲突" | 两端同时修改了同一文件 | 找到 .sync-conflict-* 文件手动合并,然后删除冲突副本 |
| 电脑重装后手机连不上 | 电脑是"新设备"了,手机还认旧 ID | 重装后在手机上删除旧设备条目,重新配对 |
| Obsidian 插件在手机/电脑不同步 | 没同步 .obsidian 文件夹 | 共享整个 Vault 根目录(包含 .obsidian);确认 .stignore 没误伤插件文件 |
| 手机 Obsidian 打不开/不识别 Vault | 路径不对,或文件还没同步完成 | 确认手机端 Obsidian 打开的路径就是 Syncthing 下载的路径;等首次同步完成再打开 |
| 管理页面无法访问 | 服务没启动 / 端口被占用 | 确认 syncthing.exe 在运行;`netstat -ano |
9. 一些建议与总结
- 先小后大:首次配置别直接同步几十 GB 的大文件夹。建个几 MB 的测试文件夹,跑通"电脑↔手机"双向同步,确认无误后再把真实 Vault 挂进去。
- 同步前先备份:把重要笔记拖进 Syncthing 之前,先复制一份到别处。虽然冲突处理很安全,但"多一层备份"永远不亏。
- 局域网内先用:两台设备在同一个 WiFi 下测试,速度最快、最容易排障;确认 OK 后再测试跨公网(手机流量)同步。
- 不要用它做"唯一备份":Syncthing 是同步不是备份——如果在一台设备上误删文件,删除操作也会同步到所有设备。重要的笔记,仍然建议配合 Git 或定期导出备份(比如本博客用的 Git + GitHub 就是很好的历史版本备份方案)。
- 保持版本更新:Syncthing 更新很勤快,建议偶尔去官网看看有没有新版本,Web 界面顶部也会提示升级。
一句话总结:Syncthing = 设备间的"私密直达快递",Obsidian = 把笔记变成普通文件。两者配合,你就拥有了一个不依赖任何云盘、完全自有的跨设备笔记系统。
祝同步愉快!🎉