如何在 Mac 上卸载 Syncthing
Syncthing 把设备的同步身份,也就是其他 Syncthing 设备认的证书和私钥,放在 ~/Library/Application Support/Syncthing 里,和 config.xml、索引数据库挨在一起,以后还想让这台 Mac 用同一个设备 ID 重新连上,就在移除任何东西之前把这个文件夹复制到别处,不然重装后的 Syncthing 在其他设备眼里就是一台新设备,每个共享文件夹都得重新接受一遍。这份指南覆盖 syncthing-macos 在 GitHub Releases 上的官方安装包和 Homebrew cask syncthing-app。
先备份设备身份
- 点菜单栏图标打开 Syncthing,等正在进行的同步跑完。
- 在另一台已配对设备打开重要同步文件核对,再把要留的文件复制到所有 Syncthing 同步目录之外,复制设备身份状态前先退出菜单栏应用,以及会写这个目录的独立 Syncthing 服务。
- 在 Finder 里选「前往 › 前往文件夹」,输入
~/Library/Application Support/Syncthing,把整个文件夹复制到所有同步目录和待删除目录之外的独立私有备份,核对副本,cert.pem和key.pem就是设备身份,config.xml记着你的文件夹和配对设备。
退出 Syncthing,移除应用
- 从菜单栏菜单退出 Syncthing,它是菜单栏工具,没有 Dock 图标。
- 如果你还用 Homebrew 另外装过命令行版的
syncthing服务(brew services start syncthing),那是一套独立安装,有自己的后台任务homebrew.mxcl.syncthing,移除菜单栏应用不会停掉或删掉它,Mole 也不会把这个任务当成这个应用的启动项。Syncthing 文档里 macOS 上所有 Syncthing 的默认目录是同一个,所以那个服务按默认设置运行的话,上面这个文件夹也是它的身份。 - 在 Finder 的「应用程序」里找到 Syncthing,移到废纸篓。
数据放在哪里
退出后,在访达按 Shift + Command + G 查看存在的路径,确认备份可用、其他 Syncthing 安装也不再需要设备身份目录后,把列出且不再需要的项目移到废纸篓。
| 位置 | 内容 | 处理建议 |
|---|---|---|
~/Library/Application Support/Syncthing |
config.xml、设备证书和私钥(cert.pem、key.pem)、网页界面的 HTTPS 证书和索引数据库 |
先备份,其他 Syncthing 安装还在使用时保留,移除前核对勾选 |
~/Library/Application Support/Syncthing-macOS |
Homebrew 给这个应用的 zap 清单里写了它,这次测试没看到 | 清楚里面是什么再删 |
~/Library/Caches/com.github.xor-gate.syncthing-macosx |
应用缓存 | 可以删 |
~/Library/Preferences/com.github.xor-gate.syncthing-macosx.plist |
菜单栏应用的偏好设置 | 不打算重装就可以删 |
Syncthing 配置文档确认了 Mac 默认位置和设备身份文件,--config、--home 或环境变量可以改配置位置,数据库也可以另存,先核对自己的配置,不把这个目录当作唯一状态位置,你同步的那些普通文件夹不在这里的删除范围内。
用 Homebrew 安装时
Mole 会先看 zap 清单,碰到未勾选、共用或者没法完全确认的内容就不执行 --zap,已勾选的残留仍照常清理。
syncthing-app 这个 cask 的 zap 清单包含 ~/Library/Application Support/Syncthing-macOS、~/Library/Caches/com.github.xor-gate.syncthing-macosx、~/Library/Cookies/com.github.xor-gate.syncthing-macosx.binarycookies 和 ~/Library/Preferences/com.github.xor-gate.syncthing-macosx.plist,里面没有 ~/Library/Application Support/Syncthing,所以不管是 Mole 还是你自己运行 brew uninstall --cask --zap syncthing-app,都不会经由 Homebrew 删掉设备身份,这个文件夹是否移除取决于 Mole 中的勾选或你单独手动删除,数据设置可以预选符合条件的应用自有数据。自己运行 --zap 依然会删掉清单里的每一项,不看 Mole 里的勾选。
只移除应用:
brew uninstall --cask syncthing-app
核对卸载结果
pgrep -il syncthing
launchctl list | grep -i syncthing
ls ~/Library/Application\ Support/Syncthing
pgrep没有输出,说明没有 Syncthing 进程在运行,有输出说明菜单栏应用或者另外装的命令行 Syncthing 还开着。- 出现
homebrew.mxcl.syncthing这一行,属于另外装的 Homebrew 服务,不属于这个应用,查询成功但过滤后没有输出,只说明返回的当前会话标签没有匹配syncthing,不能排除其他名称或系统级任务。 ls列出cert.pem、key.pem和config.xml,说明设备身份还在磁盘上,那一行没勾就是这个结果,提示「No such file or directory」说明文件夹已经没了。
Mole 会列出什么
~/Library/Application Support/Syncthing在关闭「卸载时一并移除数据和配置」时起初不勾选,开启后,符合归属和批选条件时可能预先勾上,先确认设备身份备份,其他 Syncthing 安装还在用就取消勾选。- 以 bundle ID
com.github.xor-gate.syncthing-macosx命名的项,比如缓存和偏好设置文件,默认勾选。 - Mole 还可能从 cask 列出
~/Library/Application Support/Syncthing-macOS审查行,关闭应用数据选项时不勾选,开启后合格的自有数据可能预选,准确匹配主应用标识符的~/Library/Cookies/com.github.xor-gate.syncthing-macosx.binarycookies存在时可能默认勾选。 - Homebrew
syncthing服务的homebrew.mxcl.syncthing任务永远不会被当成这个应用的启动项。
这次检查覆盖了什么
2026 年 9 月 19 日,把 GitHub Releases 上官方下载的 Syncthing 2.1.5-1 拷进「应用程序」,打开一次,再用带完全磁盘访问权限的 Mole Preview 277 和另外九个应用一起卸载,放着 config.xml、证书和私钥的 ~/Library/Application Support/Syncthing 作为未勾选的审查项列了出来,留在了磁盘上,应用一直待在菜单栏,内存占用太小,没有在 Mole 状态页里单独占一行。这次没有共享文件夹,没有配对远程设备,Homebrew cask 和命令行服务也都没有测试。
