VirtualBox内核模块与VirtualBox的版本不匹配


31

在需要安装来宾插件之前,Ubuntu 12.04上的VirtualBox 4.2.12运行良好。安装后:

 Failed to open a session for the VM Win 7 exit code 1;

 RTR3Init failed with rc=-1912(rc=1912)

运行后dpkg --list | grep virtualbox

ii  virtualbox                             4.1.12-dfsg-2ubuntu0.2                  x86 virtualization solution - base binaries
rc  virtualbox-4.2                         4.2.6-82870~Ubuntu~precise              Oracle VM VirtualBox
ii  virtualbox-dkms                        4.1.12-dfsg-2ubuntu0.2                  x86 virtualization solution - kernel module sources for dkms
ii  virtualbox-guest-additions             4.1.12-1                                transitional package for virtualbox-guest-additions-iso
ii  virtualbox-guest-additions-iso         4.1.12-1                                guest additions iso image for VirtualBox
ii  virtualbox-qt                          4.1.12-dfsg-2ubuntu0.2                  x86 virtualization solution - Qt based user interface

任何帮助表示赞赏...

谢谢...


请澄清:virtualbox的哪个版本以及如何安装来宾添加项?您要运行哪个版本(没有4.2.12)?DPKG告诉我们您已安装​​旧版本4.1.12,但已删除4.2.6。您如何安装virtualbox?还请命名主机的架构(amd64 i386?)。
塔卡特

Answers:


44

您似乎安装了两个单独的VirtualBox版本!

我建议您完全卸载VirtualBox的所有版本:

sudo apt-get autoremove 'virtualbox*'

然后直接从Oracle重新安装。转到VB下载页面,向下滚动到“基于Debian的Linux发行版”,然后按照说明进行操作。

然后再试一次。

顺便说一句,你不需要使用grepdpkg。这是命令的更好替代方法:

dpkg --list 'virtualbox*'

14

侵入性较小的解决方案可能是:

sudo dpkg-reconfigure virtualbox-dkms
sudo dpkg-reconfigure virtualbox

带有更多信息的来源


多亏了这个建议,我才意识到我完全错过了virtualbox-dkms。我停止了VBManager,使用apt-get安装了virtualbox-dkms,重新启动后一切正常。
Marco Faustinelli

1
这对我virtualbox-dkms
有用

1
从Oracle安装5.2之后,我需要运行dpkg-reconfigure virtualbox-5.2对此进行修复。
NuSkooler

9

从ubuntu repo版本切换到ppa版本后,出现了这个问题。问题的根本原因与错误消息中所述的完全相同:内核模块版本不匹配。我已经用

modinfo vboxdrv

从5.0版开始。(从PPA,我有vbox 5.1)。

我已经卸载了virtualbox-dkms,因为安装它还会从ubuntu repo中安装常规的vbox版本。但是内核模块仍然是由DKMS(/ lib / modules /(kernelversion)-generic / updates / dkms /)处理的模块之一,所以我在猜测,这就是脚本无法正常工作的原因:

我试过了

sudo /sbin/vboxconfig

似乎照常执行了所有操作,停止了内核模块,重新编译,重新加载了(据说)新的内核模块。除了检查模块版本还是5.0。

然后我尝试

sudo /sbin/rcvboxdrv setup

结果相同:没有版本更改。

然后我决定删除模块,因为我不喜欢它们在dkms文件夹中的事实。为此,您需要使用以下命令卸载内核模块

sudo rmmod vboxnetadp vboxnetflt vboxpci vboxdrv

然后从/ lib / modules /(kernelversion)-generic / updates / dkms中删除模块文件。然后跑

sudo /sbin/rcvboxdrv setup

再次确认新模块为v5.1,并且不再位于dkms下,我的VM正在运行。

现在,我想起来了,也许模块已经在/lib/modules/4.4.0-59-generic/misc/中正确地重新编译了,但是在加载dkms模块时可能具有优先权。不幸的是,我没有更多时间进行调查。

ps .:如果您从回购版本到ppa进行了相同的转换,请确保将自己添加到(新创建的)组vboxusers中,然后注销并返回。


1
切换到oracle PPA后,在Ubuntu 16.04中为我修复了此问题。非常感谢!
乔什(Josh)

最后!删除旧的.so文件就可以了。我从apt重新安装,似乎一切正常。
nullsteph

1

今天,在内核补丁之后,我在Debian 8(Jessie)上发生了这种情况。我将其修复如下:

  1. su (我不使用sudo;如果您这样做,则将sudo放在下面的行中)
  2. dpkg-reconfigure virtualbox-dkms
  3. dpkg-reconfigure virtualbox
  4. /etc/init.d/virtualbox restart

感谢Rikard / hg8提供有关步骤2和3的上述技巧。在我的情况下,可能不需要它们,但无论如何都感觉很好。


将VB从5.0移到5.2时,我遇到了同样的问题。我按照您的步骤进行了工作,但在步骤3中,如果已安装,则将virtualbox更改为virtualbox-5.2。
TommyDo

1

在我的情况下,该virtualbox-dkms版本仅与其余软件包不匹配:

$ dpkg --list | grep virtualbox
ii  unity-scope-virtualbox                        0.1+13.10.20130723-0ubuntu1 all                         VirtualBox scope for Unity
ii  virtualbox                                    5.1.34-dfsg-0ubuntu1.16.04. amd64                       x86 virtualization solution - base binaries
ii  virtualbox-dkms                               5.0.40-dfsg-0ubuntu1.16.04. all                         x86 virtualization solution - kernel module sources for dkms
ii  virtualbox-ext-pack                           5.1.34-0ubuntu1.16.04.2     all                         extra capabilities for VirtualBox, downloader.
ii  virtualbox-qt                                 5.1.34-dfsg-0ubuntu1.16.04. amd64                       x86 virtualization solution - Qt based user interface

我只是重新安装了它:

$ sudo apt purge virtualbox-dkms
$ sudo apt install virtualbox-dkms
$ dpkg --list | grep virtualbox
ii  unity-scope-virtualbox                        0.1+13.10.20130723-0ubuntu1 all                         VirtualBox scope for Unity
ii  virtualbox                                    5.1.34-dfsg-0ubuntu1.16.04. amd64                       x86 virtualization solution - base binaries
ii  virtualbox-dkms                               5.1.34-dfsg-0ubuntu1.16.04. all                         x86 virtualization solution - kernel module sources for dkms
ii  virtualbox-ext-pack                           5.1.34-0ubuntu1.16.04.2     all                         extra capabilities for VirtualBox, downloader.
ii  virtualbox-qt                                 5.1.34-dfsg-0ubuntu1.16.04. amd64                       x86 virtualization solution - Qt based user interface
ii  virtualbox-source                             5.1.34-dfsg-0ubuntu1.16.04. all                         x86 virtualization solution - kernel module source

虚拟机启动没有错误。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.