Linux如何彻底卸载VirtualBox?

卸载前的准备

  1. 备份虚拟机数据
    卸载前务必备份所有虚拟机文件(默认位于 ~/VirtualBox VMs/),避免误删重要数据。
  2. 关闭相关进程
    确保所有VirtualBox虚拟机已关闭,并终止后台进程:

    vboxmanage list runningvms  # 检查运行中的虚拟机
    vboxmanage controlvm <虚拟机名> poweroff  # 强制关闭指定虚拟机
    sudo systemctl stop vboxweb-service.service  # 停止VirtualBox服务

根据安装方式卸载

场景1:通过官方仓库安装(推荐方式)

步骤:

  1. 卸载主程序
    根据发行版选择命令:

    • Debian/Ubuntu
      sudo apt-get purge virtualbox-*  # 卸载并删除配置
    • Fedora/RHEL/CentOS
      sudo dnf remove VirtualBox-*      # Fedora
      sudo yum remove VirtualBox-*      # RHEL/CentOS
    • Arch/Manjaro
      sudo pacman -Rns virtualbox       # 删除主程序及依赖
  2. 删除残留配置与缓存

    rm -rf ~/.config/VirtualBox/        # 用户配置
    rm -rf ~/.cache/VirtualBox/         # 缓存文件
    sudo rm -rf /etc/vbox/              # 系统级配置

场景2:通过Oracle官方安装包(.run或.deb/.rpm)

  1. 查找安装版本
    sudo vboxmanage --version  # 记录版本号(如6.1.50)
  2. 执行卸载脚本
    sudo /opt/VirtualBox/uninstall.sh  # 通用卸载
    • 若通过.deb安装
      sudo dpkg -P virtualbox-<版本号>  # virtualbox-6.1
    • 若通过.rpm安装
      sudo rpm -e VirtualBox-<版本号>   # VirtualBox-6.1

场景3:通过第三方仓库(如PPA)

  1. 移除PPA源(Ubuntu)
    sudo add-apt-repository --remove ppa:virtualbox/ppa  # 删除PPA
    sudo apt-get update
    sudo apt-get purge virtualbox-*

彻底清理残留文件

  1. 删除内核模块(关键步骤)
    VirtualBox安装时会编译内核模块,需手动移除:

    sudo rm -rf /usr/lib/virtualbox/          # 主程序目录
    sudo rm -rf /usr/lib/modules/$(uname -r)/misc/vbox*  # 内核模块
    sudo depmod -a                           # 重建模块依赖
  2. 清理系统配置
    sudo rm /etc/apt/sources.list.d/virtualbox.list  # 删除APT源
    sudo rm /etc/yum.repos.d/virtualbox.repo         # 删除YUM源

验证卸载结果

  1. 检查程序是否移除:
    which virtualbox        # 应返回"not found"
    vboxmanage --version    # 应提示命令不存在
  2. 检查内核模块是否删除:
    lsmod | grep vbox       # 无输出表示成功

常见问题解决

  • 卸载后无法安装新版本
    确保已删除 /opt/VirtualBox//usr/lib/virtualbox/ 目录。
  • 内核模块冲突
    重启系统后运行 sudo dkms remove vboxhost/<版本号> --all(需安装dkms)。
  • 虚拟机配置残留
    手动删除 ~/VirtualBox VMs/~/.VirtualBox/

注意事项

  1. 权限问题:清理系统目录时需使用 sudo,避免误删非VirtualBox文件。
  2. 依赖项处理apt purgednf remove 会自动移除依赖,手动安装需额外检查。
  3. 多版本共存:系统存在多个版本时,需重复执行卸载步骤并指定版本号。

引用说明:本文操作参考 VirtualBox官方卸载文档 及Linux发行版包管理规范,建议优先使用包管理器卸载以确保完整性。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7526.html

(0)
酷番叔酷番叔
上一篇 2025年7月16日 17:55
下一篇 2025年7月16日 18:04

相关推荐

  • 程序员崩溃,代码总出bug怎么解决?

    echo “摘要应简明扼要,包含核心要素、关键发现或结论,语言精炼准确,避免细节和背景信息,突出主题和重点,使读者快速把握内容实质。”

    2025年6月23日
    7800
  • Linux系统中如何切换中英文输入?

    在Linux系统中,中英文切换是日常使用中常见的需求,主要分为图形界面和命令行环境两种场景,图形界面下的切换通常依赖输入法框架和桌面环境设置,而命令行环境则通过系统语言变量实现,以下从不同场景出发,详细介绍具体操作方法,图形界面下的中英文切换图形界面的中英文切换主要涉及输入法切换(中文输入法与英文键盘模式切换……

    2025年10月1日
    3900
  • linux如何停止c程序

    Linux中,可以使用kill命令停止C程序,需先获取其进程ID(P

    2025年8月10日
    6000
  • Linux如何进入MySQL/MariaDB命令行?

    前提条件已安装MySQL服务通过包管理器安装(示例):# Ubuntu/Debiansudo apt update && sudo apt install mysql-server# CentOS/RHELsudo yum install mysql-server确保服务已启动sudo syst……

    2025年7月7日
    6500
  • 你当前在用哪个DNS?

    在Linux系统中配置多个DNS服务器是提升网络可靠性和解析效率的关键实践,当主DNS服务器响应缓慢或故障时,系统会自动切换至备用服务器,保障服务的连续性,下面从工作机制、配置方法到底层原理进行深度解析,核心工作机制Linux的DNS解析遵循分层递进策略:顺序查询机制系统按/etc/resolv.conf文件中……

    2025年7月27日
    6500

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信