Ubuntu 下 VirtualBox 虚拟机无法启动的排查与修复
一、先快速定位问题
VBoxManage startvm "<虚拟机名>" --type headless,或在图形界面点“显示日志”查看 VBox.log / VBoxHardening.log,从最后几行定位关键词(如 vboxdrv、KVM、CPUID、桥接网卡 等)。egrep -c '(vmx|svm)' /proc/cpuinfo,返回 0 表示宿主机未开启虚拟化或未在 BIOS 启用。lsmod | grep vboxdrv 检查驱动是否加载;在虚拟机设置→系统→加速,确认已勾选 VT-x/AMD-V 与 嵌套分页。二、修复宿主机驱动与内核模块
sudo apt update && sudo apt install --reinstall virtualbox-dkms linux-headers-$(uname -r)sudo /sbin/vboxconfig(或 sudo /etc/init.d/vboxdrv setup,旧版本)/var/log/vbox-install.log 与 dmesg | tail,常见原因是缺少当前内核头文件或 DKMS 未跟踪新内核。echo "deb [arch=amd64] https://download.virtualbox.org/virtualbox/debian $(lsb_release -sc) contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.listwget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -sudo apt update && sudo apt install virtualbox三、常见场景与对应处理
.vbox 文件,将 <BridgedInterface name="旧网卡名"/> 改为 <BridgedInterface name="当前网卡名"/>。sfc /scannow 修复系统 DLL;查看 VBoxHardening.log 退出码定位问题。四、仍未解决时建议准备的信息
VBoxManage --version 与 uname -a 的输出。/var/log/vbox-install.log 的错误内容。