如何处理VirtualBox启动错误消息:The vboxdrv kernel module is not loaded-阿里云开发者社区

开发者社区> 汪子熙> 正文
登录阅读全文

如何处理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:

[](https://www.toutiao.com/i6610634214356288008/?group_id=6610634214356288008)

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

[](https://www.toutiao.com/i6610639549208986125/?group_id=6610639549208986125)

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的原创文章,请关注公众号"汪子熙":

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: