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

相关推荐

  • 如何在linux运行c

    Linux中运行C程序,先编写源代码(如test.

    2025年8月13日
    9700
  • Linux系统下SDK安装、配置与使用的正确步骤有哪些?

    在Linux系统中,软件开发工具包(SDK)是构建应用程序的核心组件,它通常包含编译器、库文件、调试工具、文档及示例代码等资源,不同类型的SDK(如Android SDK、CUDA SDK、ROS SDK等)在Linux下的使用方法略有差异,但核心流程均围绕“获取-安装-配置-使用”展开,本文将详细说明Linu……

    2025年10月3日
    7300
  • Linux查看用户有哪些可靠方法?

    查看 /etc/passwd 文件(最直接)命令:cat /etc/passwd说明:所有用户信息存储在 /etc/passwd 文件中,每行代表一个用户,输出格式:用户名:密码占位符(x):用户ID(UID):组ID(GID):描述信息:家目录:默认Shelljohn:x:1001:1001:John Doe……

    2025年7月23日
    10900
  • Linux如何连接校园网?认证步骤与配置方法详解

    在Linux系统中连接校园网,需根据校园网的认证方式(如PPPoE、802.1X、Portal网页认证等)进行针对性配置,同时确保网络硬件和系统环境正常,以下是详细步骤和注意事项:准备工作确认硬件与驱动检查网卡是否正常工作:有线连接可用ip addr查看eth0等网卡接口是否存在,无线连接用iwconfig查看……

    2025年10月9日
    10500
  • Linux系统如何通过FTP进行文件传输操作?

    FTP(File Transfer Protocol)是一种基于TCP/IP协议的文件传输协议,用于在客户端和服务器之间进行文件上传、下载等操作,Linux系统作为服务器端或客户端,均支持通过FTP进行文件管理,本文将详细介绍Linux环境下使用FTP的客户端操作、服务器搭建及相关注意事项,Linux命令行FT……

    2025年9月19日
    9200

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信