如何在 Mac 上卸载 nteract
卸载 nteract 前,先保存并复制笔记本、附件和本地 Python 环境到独立备份,再打开副本确认内容,这里以官网 Mac 包为主,Homebrew 的处理另列在下面。
退出前保存笔记本并结束运行中的内核,官方 nteract README 说明 runtimed 是用户级后台服务,单独管理的运行时和 Python 环境保留,不因为 runt 缓存在同一次运行期间出现就删除它。
退出并移除应用
结束当前任务并退出 nteract,如果下面的用户启动项存在,先查看 Program 或 ProgramArguments,确认目标在自己的 nteract 应用内再处理。
plutil -p "$HOME/Library/LaunchAgents/io.nteract.runtimed.plist"
文件不存在表示没有这个启动项,无法读取或目标不在 nteract 内时先查清,不直接删除。确认属于 nteract 后,先停止用户服务,再把这个 plist 移入废纸篓。
launchctl bootout "gui/$(id -u)" "$HOME/Library/LaunchAgents/io.nteract.runtimed.plist"
在活动监视器确认 runtimed 已停止,命令报错本身不能证明服务已退出,然后从实际 Finder 位置把 nteract.app 移入废纸篓,备份确认前保留废纸篓。官方文档
审查本地数据
下面的确切位置来自测试记录或当前 cask,具体处理范围在后面说明,可以通过 Finder 的前往 › 前往文件夹打开,先复制需要的内容,想保留设置或无法确认归属时就留下,移除这些数据不是卸载应用的前提。
~/Library/Application Support/org.nteract.desktop/.window-state.json~/Library/Caches/runt
检查结果
这条只读命令搜索进程的完整命令行,不检查磁盘内容。
pgrep -ifl 'nteract|runtimed|notebook'
没有输出且退出码为 1,表示未找到匹配的进程命令行,输出条目时到活动监视器核对,也可能命中无关进程,报错不证明已卸载,还要到原 Finder 位置确认应用不在,保留的数据目录或独立组件不表示应用仍安装。
运行 cask 命令前先检查下面的入口,ls 能显示符号链接目标,普通文件则还要单独确认归属,没有这个入口只表示它不存在,权限错误不能当作已移除。
ls -l /usr/local/bin/nb /usr/local/bin/runt
用 Homebrew 安装时
按已安装的 cask 记录卸载,不加 zap。
brew uninstall --cask nteract
普通卸载会卸载 io.nteract.runtimed,并删除 /usr/local/bin/nb 和 /usr/local/bin/runt,这些动作不依赖 zap,也不读取 Mole 的数据勾选项,另外安装过 runt 时先核对归属。当前 cask 另列了下面的 zap 目标,会删除设置、本地数据或集成文件,这是 Homebrew 的清单,不是厂商公布的数据路径。
~/Library/Application Support/nteract~/Library/Application Support/org.nteract.desktop~/Library/Caches/org.nteract.desktop~/Library/WebKit/org.nteract.desktop
直接执行 brew uninstall --cask --zap nteract 会运行自己的 zap 范围,不读取 Mole 的勾选项,Mole 只有在完整范围通过检查时才使用 zap,未勾选或共享的路径、审查范围之外的路径、未知条目和不支持的指令都会阻止它,已勾选残留仍走 Mole 的删除流程。
Mole 会列出什么
~/Library/Application Support/org.nteract.desktop 按应用标识匹配,存在且未受保护时默认勾选,确认前保存笔记本并检查目录内容,后来出现的 .window-state.json 不在原审查计划中,保留不表示删除失败,独立 ~/Library/Caches/runt 归属未核验,应保留。
以上默认状态以“卸载时一并移除数据和配置”关闭为前提,开启后也会勾选符合条件的待审查应用数据,共享存储和受保护数据仍保留单独审查或锁定。
这次检查覆盖了什么
以下是 2026 年 10 月 5 日的测试范围,官方 Apple Silicon 应用启动后,用源码构建的 Mole 卸载,用户服务停止,新生成的启动 plist 已移除,窗口状态文件在原扫描之后出现并保留,独立 runt 缓存因归属未核验保留,没有验证笔记本执行,也没有选择运行时。
