在 Mac 上卸载 VirtualBox
卸载 VirtualBox 前先关闭每台虚拟机,备份要留的 VM 文件;移除虚拟机和移除应用是两件事。2026 年 9 月 19 日测试的是从官网包拷出的应用。
退出并移除应用
完整 Oracle 安装器安装的版本,先关闭所有虚拟机、退出 VirtualBox,独立备份要保留的 VM 文件夹和 ~/Library/VirtualBox 注册资料。在访达打开官方 VirtualBox .dmg,双击挂载映像中的卸载图标 VirtualBox_Uninstall.tool,完成卸载提示和管理员验证。Oracle 的 7.2 用户指南记录了这条 macOS 卸载路径。本次测试只是从包里拷出 VirtualBox.app,移动这个应用副本没有验证安装器组件或重启。
核对应用数据
核实备份后,在访达按 Shift + Command + G 打开 ~/Library/VirtualBox,不再需要注册资料时才把这个文件夹移到废纸篓。再到 ~/Library/Preferences 和 ~/Library/Saved Application State,只移除名称以 org.virtualbox.app.VirtualBox 开头且不再需要的项目,上层文件夹不动。~/VirtualBox VMs 放的是虚拟机文件,要用的机器保留,不要的逐台决定,cask 仅在文件夹为空时尝试移除它。zap 还列出 /Library/Application Support/VirtualBox,先用官方卸载工具处理系统组件,再核对这处系统文件夹。
用 Homebrew 安装时
Homebrew cask 有独立的 --zap 清单。brew uninstall --cask virtualbox 会以管理员权限运行 VirtualBox_Uninstall.tool --unattended,处理 org.virtualbox.pkg.* 的安装文件和记录,并删除 /usr/local/bin/vboximg-mount,但不执行 zap 清单;brew uninstall --cask --zap virtualbox 还会处理清单里的数据,不看 Mole 的勾选。zap 列出系统支持文件和用户 VM 注册信息,不能代替官方安装器的卸载流程。zap 清单涉及未勾选、共用或无法确认的数据时,Mole 跳过 --zap,已选残留仍由自身流程处理。
brew uninstall --cask virtualbox
检查结果
下面两条命令只查看进程和一处相关路径,不会删除内容:
pgrep -il "VirtualBox"
ls -ld "$HOME/Library/VirtualBox"
pgrep 没有匹配项表示当前没有同名进程,有输出时先辨认再退出。ls 列出路径表示它还在,报「No such file」只说明这处确切路径不存在,权限错误则不能判断。
Mole 会列出什么
关闭「卸载时一并移除数据和配置」时,Mole 把 ~/Library/VirtualBox 列为需要确认的数据且不勾选,开启后,这条合格的注册资料行可能预先勾选,要复用虚拟机注册资料就先备份并取消勾选。Mole 不会默认勾选 VM 镜像,也不会把只卸 .app 的测试当成系统组件已移除。
这次检查覆盖了什么
本次使用的是从官网包拷出的应用。2026 年 9 月 19 日测试版本 7.2.18 时只拷了 .app,没有运行安装器也没重启;~/Library/VirtualBox 已纳入审查,驱动和收据的移除仍未验证。
