Syncthing 是 GitHub 上 60k+ star 的开源同步工具。P2P 架构,断点续传,端到端加密,不依赖任何中心化服务。

拓扑设计

  • 设备 A:主力台式机(常开,作为 "introducer" 介绍人)
  • 设备 B:笔记本(旅行用)
  • 设备 C:手机(Android)
  • 设备 D:NAS(24h 在线,权威源)

核心:单向/双向与文件类型隔离

配置文件 → 各端共享;照片视频 → 笔记本只读,台式机单向发送;代码库 → 双向。

配合 inotify 触发动作

# Linux 上 Syncthing 文件到时自动运行脚本
syncthing -no-browser -home=/etc/syncthing \
  | inotifywait -e modify ~/Sync/ && \
    rsync -av ~/Sync/ backup:/data/
Syncthing 同步冲突时不会自动合并,会生成 sync conflict 文件夹。需要人工决定。