我的cent os7是liveCD的镜像,装好了之后去vbox官方下载了一个rpm包并安装。创建了虚拟机,启动时报错:
kernel driver not installed (rc=-1908)
这个问题需要重新编译vbox的内核模块
第一种方法
按照提示用root身份执行了/sbin/rcvboxdrv setup
然后报错:Bad argument setup
google之后找到解决方法:
执行sudo /usr/lib/virtualbox/vboxdrv.sh setup
报错
Recompiling VirtualBox kernel modules [失败]
vbox内核模块编译失败
我之前没有装开发工具,所以这里yum groupinstall -y "Development Tools"安装了一套开发工具
然后根据模块编译失败的日志:/var/log/vbox-install.log当中查找到
Makefile:185: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again。 停止。
google之后,,原因是找不到内核源目录,使用命令
export KERN_DIR=/usr/src/kernels/3.10.0-327.4.5.el7.x86_64/ ##这里的版本号直接补全就好,或者使用`uname -r`
定义了源目录之后在使用sudo /usr/lib/virtualbox/vboxdrv.sh setup
[root@localhost dxjun]# /usr/lib/virtualbox/vboxdrv.sh setup
Stopping VirtualBox kernel modules [ 确定 ]
Recompiling VirtualBox kernel modules [ 确定 ]
Starting VirtualBox kernel modules [ 确定 ]
这次就重新编译完成了。
第二种方法
也可以按照提示中的安装dkms来解决,
yum install -y dkms
然后在sudo /usr/lib/virtualbox/vboxdrv.sh setup
[root@localhost dxjun]# /usr/lib/virtualbox/vboxdrv.sh setup
Stopping VirtualBox kernel modules [ 确定 ]
Uninstalling old VirtualBox DKMS kernel modules [ 确定 ]
Trying to register the VirtualBox kernel modules using DKMS[ 确定 ]
Starting VirtualBox kernel modules [ 确定 ]
这样也是可以的。
至此就可以了,去打开vbox的虚拟机就能够工作了。