0%

MAC运行Virtual Box时"The support driver is not installed"解决

注意:这只是一个Work Around方法,并非完全解决方案

背景

MAC升级Big Sur后,每次运行Virtual Box都会有如下报错:

1
2
3
4
5
Kernel driver not installed (rc=-1908)

Make sure the kernel module has been loaded successfully.

where: suplibOsInit what: 3 VERR_VM_DRIVER_NOT_INSTALLED (-1908) - The support driver is not installed. On linux, open returned ENOENT.

CSDN这篇文章介绍得很详细,但不够完整,这里做一下补充

下载安装Extension

Virtual Box官网下载Extension Pack并安装,如下图:

Extension Pack

下载安装时,如果被系统安全阻拦,可以在“安全与隐私”设置里信任相关程序的执行。

执行kext

这里很奇怪,无论怎么安装重启,在我的电脑上,对应的Driver总不能开机自动运行(这也是前文说这是Workaround的原因),因此每次重新开机后还必须执行一次如下命令:

1
sudo kextload -b org.virtualbox.kext.VBoxDrv

接着再运行Virtual Box就不会报错了。

后续若找到自动加载的方法,可以再交流讨论更新

简单说明

这里说明一下,会有以上报错的主要原因就是MAC High Sierra,开始逐渐淘汰运行在内核态的驱动,改推荐(甚至强制推行)厂商改用System Extension来开发驱动,于是乎,各种兼容性问题就来了。

这也是Apple强硬的一点。当然反之使用System Extension是有好处的,希望Oracle后续看如何更好地兼容新的MAC OS。