如何在 Mac 上卸载 Surge
移除 Surge 之前先退出它,并先想好要不要留 ~/Library/Application Support/com.nssurge.surge-mac 这个数据文件夹,Mole 每次卸载都会保留它,删不删由你自己决定。如果你曾经让 Surge 装过特权辅助程序,它也会留下,Mole 从不列出也不删除 Surge 的辅助程序。这份指南针对 Surge 官网下载版和 Homebrew cask surge。
退出 Surge
从菜单栏图标退出 Surge,再用「检查结果」里的命令确认没有 Surge 进程留下。
移除应用
把 Surge.app 从「应用程序」拖进废纸篓,Surge Dashboard 在 Surge.app 里面,会跟着一起走。
数据在哪里
下面是 Surge 自己的重置说明会删的文件夹,再加上 Homebrew zap 清单里多出来的路径。
| 位置 | 里面是什么 | Mole 怎么处理 |
|---|---|---|
~/Library/Application Support/com.nssurge.surge-mac |
Surge 的应用数据 | 在 Mole 内置的保留名单里,就算列出并勾上,卸载时也会跳过 |
~/Library/Application Support/Surge |
按显示名存放的其他 Surge 数据 | 会列出,默认不勾选 |
~/Library/Preferences/com.nssurge.surge-mac.plist |
偏好设置 | 会列出,默认勾选 |
~/Library/Caches/com.nssurge.surge-mac、~/Library/HTTPStorages/com.nssurge.surge-mac |
缓存和网页存储 | 会列出,默认勾选 |
~/Library/Logs/Surge |
日志 | 会列出,默认勾选 |
~/Library/Application Support/bugsnag-shared-com.nssurge.surge-mac、~/Library/Caches/bugsnag-shared-com.nssurge.surge-mac、~/Library/Application Support/com.bugsnag.Bugsnag/com.nssurge.surge-mac |
崩溃报告 SDK 的数据 | 会列出,默认勾选 |
/Library/PrivilegedHelperTools/com.nssurge.surge-mac.helper |
特权辅助程序,批准过才会有 | 从不列出,也不删除 |
Surge 的重置说明里还有 com.nssurge.surge-dashboard 的偏好设置和同名的 Application Support 文件夹。Surge:Mac 重置
装过 Surge 辅助程序时
Mole 的管理员辅助程序会按名字拒绝 Surge 的文件,所以 Mole 从不把这个辅助程序显示成一行。Homebrew 给 Surge 写的卸载步骤会卸载 launchd 任务 com.nssurge.surge-mac.helper 并删掉 /Library/PrivilegedHelperTools/com.nssurge.surge-mac.helper,官网版要手动做同样的事,需要管理员账户。
用 Homebrew 安装时
Mole 会先检查 zap 清单,涉及未勾选的数据、其他应用共用的文件或无法确认的内容时不执行 --zap,已勾选的残留仍由 Mole 清理。
surge 这个 cask 的普通卸载步骤会卸载并删除辅助程序,移除 cask 时还会删掉「应用程序」里的 Surge Dashboard.app 链接,以及 Homebrew bin 和 sbin 里的 surge-cli、surge-dhcpd 链接。zap 清单会删掉上表里所有数据路径,外加所有 com.nssurge.surge* 的偏好设置和窗口状态,执行 brew uninstall --cask --zap surge 会把它们都删掉,不管你在 Mole 里勾了什么,Mole 保留的那个数据文件夹也在内。只要那个数据文件夹存在,它在保留名单里,或者 Application Support/Surge 没有勾,Mole 就不带 --zap。Homebrew surge cask
移除应用、链接和辅助程序,但保留数据:
brew uninstall --cask surge
检查结果
pgrep -il Surge
launchctl list | grep -i nssurge
ls -l /Library/PrivilegedHelperTools/com.nssurge.surge-mac.helper
ls -d "$HOME/Library/Application Support/com.nssurge.surge-mac"
pgrep 没有输出,说明 Surge 没在运行。launchctl list 没有输出,说明当前会话里没加载 Surge 的任务。对辅助程序执行 ls -l,提示「No such file or directory」说明从没装过或已经删掉,打出文件信息说明还在。用 Mole 卸载后 ls -d 打出数据文件夹是预期结果。
Mole 会列出什么
- 偏好设置文件、Caches、HTTPStorages、
~/Library/Logs/Surge,以及com.nssurge.surge-mac的 Bugsnag 文件夹会列出,默认勾选。 ~/Library/Application Support/Surge会列出,默认不勾选。~/Library/Application Support/com.nssurge.surge-mac在 Mole 内置的保留名单里,从不删除。- 特权辅助程序和它的 launchd 任务从不列出。
这次检查覆盖了什么
2026 年 9 月 23 日,装上 Surge 6.9.1,用 Mole 的开发构建卸载,这个构建的测试钩子会把列出的行全部勾上,所以这一轮只看得出列了什么、删了什么,看不出默认勾选,上面的默认勾选来自 Mole 的规则。辅助程序一直没批准,所以没装上,它的移除也没测到。~/Library/Application Support/com.nssurge.surge-mac 被保留名单跳过。两个 bugsnag-shared-com.nssurge.surge-mac 文件夹那一轮没有列出,之后 Mole 的规则补上了它们,这个改动还没在正式发布的构建上验证。登录、增强模式和 Dashboard 都没有测。
