如何处理VirtualBox启动错误消息:The vboxdrv kernel module is not loaded

Posted sap-jerry

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何处理VirtualBox启动错误消息:The vboxdrv kernel module is not loaded相关的知识,希望对你有一定的参考价值。

我在启动minikube时,遇到如下错误消息:

技术分享图片

技术分享图片

Starting local Kubernetes v1.10.0 cluster...

Starting VM...

E1010 03:27:37.920050 4827 start.go:174] Error starting host: Error creating host: Error executing step: Running precreate checks.

: We support Virtualbox starting with version 5. Your VirtualBox install is "WARNING: The vboxdrv kernel module is not loaded. Either there is no module available for the current kernel (3.10.0-862.11.6.el7.x86_64) or it failed to load. Please recompile the kernel module and install it by sudo /sbin/vboxconfig You will not be able to start VMs until this problem is fixed. 5.2.18r124319". Please upgrade at https://www.virtualbox.org.

Retrying.

E1010 03:27:37.921090 4827 start.go:180] Error starting host: Error creating host: Error executing step: Running precreate checks.

: We support Virtualbox starting with version 5. Your VirtualBox install is "WARNING: The vboxdrv kernel module is not loaded. Either there is no module available for the current kernel (3.10.0-862.11.6.el7.x86_64) or it failed to load. Please recompile the kernel module and install it by sudo /sbin/vboxconfig You will not be able to start VMs until this problem is fixed. 5.2.18r124319". Please upgrade at https://www.virtualbox.org

核心是这个错:

The vboxdrv kernel module is not loaded.

执行命令行:

rcvboxdrv setup

结果:

技术分享图片

vboxdrv.sh: Stopping VirtualBox services.

vboxdrv.sh: Starting VirtualBox services.

vboxdrv.sh: Building VirtualBox kernel modules.

This system is currently not set up to build kernel modules.

Please install the gcc make perl packages from your distribution.

Please install the Linux kernel "header" files matching the current kernel

for adding new hardware support to the system.

The distribution packages containing the headers are probably:

kernel-devel kernel-devel-3.10.0-862.11.6.el7.x86_64

解决方案:

1. 按照这篇文章的介绍安装gcc make perl package:

2. 安装kernel header文件。参考:

3. 执行命令行:

rcvboxdrv setup

确保看到消息:

vboxdrv.sh: Building VirtualBox kernel modules.

技术分享图片

技术分享图片

这个vboxdrv的作用,VirtualBox的帮助文档写的很清楚:

In order to run other operating systems in virtual machines alongside your main operating system, VirtualBox needs to integrate very tightly into the system. To do this it installs a "driver" module called vboxdrv which does a lot of that work into the system kernel, which is the part of the operating system which controls your processor and physical hardware. Without this kernel module, you can still use the VirtualBox manager to configure virtual machines, but they will not start.

我简单翻译一下:

为了在宿主机里以虚拟机的方式运行其他类型的操作系统,VirtualBox需要和宿主机操作系统的Kernel交互,进行交互的模块就称为vboxdrv驱动,它本身也是操作系统的一部分,负责控制操作系统的CPU和其他硬件资源。如果没有vboxdrv驱动,我们虽然仍旧可以使用VirtualBox manager来管理虚拟机,但无法在宿主系统上启动这些虚拟机。

rcvboxdrv setup执行后问题解决。

技术分享图片

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

技术分享图片

以上是关于如何处理VirtualBox启动错误消息:The vboxdrv kernel module is not loaded的主要内容,如果未能解决你的问题,请参考以下文章

如何处理错误消息Please install the gcc make perl packages

如何处理Eclipse错误消息 The declared package does not match the expected package

当 RabbitMQ 交换不存在时如何处理错误(并且消息通过消息传递网关接口发送)

如何处理 MaxUploadSizeExceededException

如何处理Docker的错误消息request canceled:Docker代理问题

如何处理 Spring Rest API 上的内部服务器错误(500)以自定义消息?