如何在 Mac 上卸载 KnockKnock
移除 KnockKnock 前,先保存需要的扫描结果,官方说明介绍的是独立运行、列出持久化软件的扫描工具,扫描结果不全是恶意软件,也不是属于 KnockKnock 的文件。
先退出,再移除应用
先完成或停止扫描并退出 KnockKnock,再按官方说明把 KnockKnock.app 移进废纸篓,不要为了卸载扫描工具,把扫描中显示的所有应用、启动项或扩展一起移除。
哪些数据要留下
~/Library/Preferences/com.objective-see.KnockKnock.plist在测试中保存应用偏好设置,要留配置时先复制。- 测试观察到可归属的临时缓存,cask 还列有
~/Library/Caches/com.objective-see.KnockKnock和~/Library/Saved Application State/com.objective-see.KnockKnock.savedState。 - 导出的报告与其中显示的第三方软件都与扫描工具偏好设置分开,完全磁盘访问由 macOS 管理,不通过删除权限数据库处理。
复制需要的设置后,在访达按 Shift + Command + G,逐项粘贴上面的完整路径,检查内容,再把确认属于应用的数据移进废纸篓。
检查卸载结果
pgrep -ifl KnockKnock
ls -ld /Applications/KnockKnock.app "$HOME/Library/Preferences/com.objective-see.KnockKnock.plist"
pgrep 没有输出只表示没有找到这个名称,不代表所有辅助进程都已退出,有输出时核对它的实际可执行文件路径,ls 提示路径不存在只说明这一处没有了,权限错误仍无法判断,留下的文件夹也可能是你要保留的数据。
用 Homebrew 安装时
cask 没有单独的卸载辅助程序,zap 列有精确缓存、偏好设置和保存状态,不会移除扫描发现的软件。
不运行 zap 时,用下面的命令卸载:
brew uninstall --cask knockknock
Mole 会先核对 Homebrew 的整份删除清单,涉及未勾选的数据、共享文件或无法确认的内容时跳过 --zap,已勾选的残留仍由 Mole 清理。自行运行 brew uninstall --cask --zap knockknock 会执行 Homebrew 的完整 zap 清单,不会读取 Mole 的勾选状态。
Mole 会列出什么
Mole 默认勾选应用、精确偏好设置和可归属缓存项,要留偏好设置时取消这一项勾选,KnockKnock 报告里的软件不会只因出现在报告中就跟着一起移除。
这些是「卸载时一并移除数据和配置」关闭时的选择,打开后,符合条件的待确认应用数据也可能勾选,共享数据、受保护的资料和 Agent 工作档案仍按原有方式逐项确认或保持锁定,卸载前核对最终清单。
这次检查覆盖了什么
2026 年 9 月 25 日,从官网压缩包拷出的 KnockKnock 4.1.0 用 Mole 开发构建卸载,应用、偏好设置和临时缓存项已移除,这份卸载记录没有验证恶意软件检测、VirusTotal 提交或扫描结果清理。
