温馨提示×

Ubuntu安装VirtualBox失败怎么办

小樊
39
2026-08-22 11:09:33
栏目: 智能运维

在 Ubuntu 上安装 VirtualBox 失败 是比较常见的问题,原因可能包括 内核版本、安全启动、软件源、依赖缺失、已有冲突安装 等。下面我按 最常见 → 较少见 的顺序给你一套排查与解决方法,90% 的情况都能解决


一、先确认你的 Ubuntu 版本

lsb_release -a
uname -r

记下:

  • Ubuntu 版本(如 22.04 / 24.04)
  • 内核版本(如 6.5.0-xx)

二、最推荐的安装方式(官方源,最稳定)

✅ 方法 1:使用 Ubuntu 官方仓库(推荐新手)

sudo apt update
sudo apt install virtualbox

如果失败,继续往下看。


三、常见失败原因 & 解决方案


❌ 1. 内核模块编译失败(最常见)

报错示例

vboxdrv.sh: failed to build kernel modules
modprobe vboxdrv failed

✅ 解决方法

安装 内核头文件 + 编译工具

sudo apt update
sudo apt install build-essential dkms linux-headers-$(uname -r)

然后重新配置:

sudo /sbin/vboxconfig

✅ 若成功,重启:

reboot

❌ 2. 安全启动(Secure Boot)导致模块被阻止

这是 非常常见原因

现象

  • 安装成功
  • 启动虚拟机时报错:
Kernel driver not installed (rc=-1908)

✅ 解决方案(任选一个)

✅ 方案 A:关闭 Secure Boot(最简单)

进入 BIOS / UEFI:

  • Secure Boot → Disabled
✅ 方案 B:给 VirtualBox 模块签名(高级)
sudo apt install mokutil
mokutil --sb-state

如果显示 SecureBoot enabled,需要签名内核模块(不推荐新手)。


❌ 3. 之前安装过 VirtualBox 没卸载干净

完全卸载旧版本

sudo apt remove --purge virtualbox*
sudo apt autoremove

删除配置:

rm -rf ~/.config/VirtualBox
rm -rf ~/VirtualBox\ VMs

然后重新安装。


❌ 4. apt 源冲突 / 版本冲突

检查是否有 Oracle 官方源

cat /etc/apt/sources.list
ls /etc/apt/sources.list.d/

如果有类似:

virtualbox.org

建议先禁用或删除。

然后:

sudo apt update
sudo apt install virtualbox

四、使用 Oracle 官方版本(功能更新)

✅ 方法 2:Oracle 官方 VirtualBox(推荐进阶用户)

1️⃣ 添加官方源(Ubuntu 22.04 / 24.04)

sudo apt install gnupg
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/oracle-virtualbox.gpg
echo "deb [arch=amd64] https://download.virtualbox.org/virtualbox/debian $(lsb_release -cs) contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list

2️⃣ 安装

sudo apt update
sudo apt install virtualbox-7.0

五、安装后仍然无法启动虚拟机?

✅ 检查内核模块

lsmod | grep vbox

应有:

vboxdrv
vboxnetflt
vboxnetadp

如果没有:

sudo modprobe vboxdrv

六、快速自检清单 ✅

检查项 命令
内核头文件 linux-headers-$(uname -r)
编译工具 build-essential dkms
Secure Boot mokutil --sb-state
旧版本冲突 apt remove --purge virtualbox*
模块状态 `lsmod

七、如果你愿意,我可以精准定位

你可以直接把 完整报错信息 发给我,比如:

  • 终端报错
  • 启动虚拟机时的弹窗内容
  • sudo /sbin/vboxconfig 的输出

我可以一步一步帮你修 ✅

0