我已经Version 5.1.18 r114002 (Qt5.5.1)
在 Ubuntu 上安装了 VirtualBox 16.04 LTS
。虚拟化一切(Kali、Windows 10)。
我遇到以下错误:
RTR3InitEx 失败,rc=-1912 (rc=-1912)
VirtualBox 内核模块与此版本的 VirtualBox 不匹配。VirtualBox 的安装显然没有成功。执行
'/sbin/vboxconfig'
可能会纠正这一点。确保不要混合使用 VirtualBox 的 OSE 版本和 PUEL 版本。
其中:supR3HardenedMainInitRuntime 内容:4 VERR_VM_DRIVER_VERSION_MISMATCH (-1912) - 安装的支持驱动程序与用户的版本不匹配。
当我dpkg --list virtualbox-*
在终端中运行时,我得到:
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-============-============-=================================
rc virtualbox-5.0 5.0.32-11293 i386 Oracle VM VirtualBox
rc virtualbox-5.1 5.1.18-11400 i386 Oracle VM VirtualBox
un virtualbox-gue <none> <none> (no description available)
un virtualbox-gue <none> <none> (no description available)
un virtualbox-ose <none> <none> (no description available)
Run Code Online (Sandbox Code Playgroud)
Rav*_*ina 85
请注意,当运行或删除和安装等典型解决方案不起作用时,此答案旨在专门解决原始海报的问题。sudo /sbin/vboxconfig
virtualbox-dkms
dkms
请先尝试这些简单的解决方法,它们可能会立即对您有所帮助。
看来您的 virtualbox 安装版本是针对 32 位架构的,而您运行的是 64 位操作系统,这可能是导致此问题的原因。
我的解决方法是从 PPA 中删除已安装的版本,并从官方存储库中安装 virtualbox。
要删除 virtualbox,请运行:
sudo apt autoremove --purge virtualbox*
Run Code Online (Sandbox Code Playgroud)
之后,通过以下方式确保您的系统上没有安装其他版本:
dpkg -l 'virtualbox*' | grep ^i
Run Code Online (Sandbox Code Playgroud)
你不应该得到任何输出,你也可以尝试运行 virtualbox 以确保它没有安装。
然后从您的sources.list
和sources.list.d
目录中删除所有相关的 PPA 。前任:
mkdir ~/apt-tmp
sudo mv /etc/apt/sources.list.d/* ~/apt-tmp
Run Code Online (Sandbox Code Playgroud)
确保/etc/apt/sources.list
.
并更新您的来源:
sudo apt update
Run Code Online (Sandbox Code Playgroud)
现在我们可以搜索以查看可以安装的版本:
apt-cache madison virtualbox | grep -iv sources
Run Code Online (Sandbox Code Playgroud)
产生这样的输出:
virtualbox | 5.0.32-dfsg-0ubuntu1.16.04.2 | http://mirrors.kernel.org/ubuntu xenial-updates/multiverse amd64 Packages
virtualbox | 5.0.18-dfsg-2build1 | http://mirrors.kernel.org/ubuntu xenial/multiverse amd64 Packages
Run Code Online (Sandbox Code Playgroud)
然后我将安装中提到的最后一个版本xenial-updates
:
sudo apt install virtualbox=5.0.32-dfsg-0ubuntu1.16.04.2
Run Code Online (Sandbox Code Playgroud)
另外sudo apt install virtualbox
,也可以,但我会使用上述命令来确保将安装我想要的版本。
毕竟,请检查是否安装了正确的版本。
从命令行:
dpkg -l virtualbox* | grep ^i
ii virtualbox 5.0.32-dfsg-0ubuntu1.16.04.2 amd64 x86 virtualization solution - base binaries
ii virtualbox-dkms 5.0.32-dfsg-0ubuntu1.16.04.2 all x86 virtualization solution - kernel module sources for dkms
ii virtualbox-qt 5.0.32-dfsg-0ubuntu1.16.04.2 amd64 x86 virtualization solution - Qt based user interface
Run Code Online (Sandbox Code Playgroud)
从 GUI:确保正确的版本正在运行。
帮助菜单 -> 关于 virtualbox
注意绿色高光
Dan*_*tin 84
如果您通过官方手册安装了 VirtualBox并且没有忘记从默认的 Ubuntu 存储库中删除已安装的一个。
检查是否virtualbox-dkms
安装:
dpkg -l | grep virtualbox-dkms
Run Code Online (Sandbox Code Playgroud)
如果是,则删除它并安装 dkms
sudo apt-get purge virtualbox-dkms && \
sudo apt-get install dkms
Run Code Online (Sandbox Code Playgroud)
重建 VirtualBox 内核模块:
sudo /sbin/vboxconfig
Run Code Online (Sandbox Code Playgroud)
小智 9
所以,就我而言,内核模块没有被正确删除。
以下是详细信息:
root@Dell5280 [~]# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS
root@Dell5280 [~]# uname -r
4.13.0-31-generic
Run Code Online (Sandbox Code Playgroud)
问题:
root@Dell5280 [~]# modinfo vboxdrv
filename: /lib/modules/4.13.0-31-generic/updates/dkms/vboxdrv.ko
version: 5.0.40_Ubuntu r115130 (0x00240000)
license: GPL
description: Oracle VM VirtualBox Support Driver
author: Oracle Corporation
srcversion: 6D8B4900A693FC50489A130
depends:
name: vboxdrv
vermagic: 4.13.0-31-generic SMP mod_unload
Run Code Online (Sandbox Code Playgroud)
使固定:
root@Dell5280 [~]# rm /lib/modules/4.13.0-31-generic/updates/dkms/vboxdrv.ko
root@Dell5280 [~]# modinfo vboxdrv
filename: /lib/modules/4.13.0-31-generic/updates/dkms/vboxdrv.ko
modinfo: ERROR: could not get modinfo from 'vboxdrv': No such file or directory
[1] root@Dell5280 [~]# /sbin/vboxconfig
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: Starting VirtualBox services.
root@Dell5280 [~]# modinfo vboxdrv
filename: /lib/modules/4.13.0-31-generic/misc/vboxdrv.ko
version: 5.2.7 r120349 (0x00290000)
license: GPL
description: Oracle VM VirtualBox Support Driver
author: Oracle Corporation
srcversion: 4880B21EFF1B605D6402982
depends:
name: vboxdrv
vermagic: 4.13.0-31-generic SMP mod_unload
parm: force_async_tsc:force the asynchronous TSC mode (int)
Run Code Online (Sandbox Code Playgroud)
在此之后,一切正常(至少在我的情况下)
希望能帮助到你。隐藏 查看完整的活动日志
我在https://bugs.launchpad.net/ubuntu/+source/virtualbox/+bug/1736116发布了回复
您的系统上似乎安装了两个独立版本的 VirtualBox!
我建议您完全卸载VirtualBox 的所有版本:
sudo apt-get autoremove 'virtualbox*'
Run Code Online (Sandbox Code Playgroud)
然后直接从 Oracle virtualbox 重新安装。转到VB 下载页面,向下滚动到“基于 Debian 的 Linux 发行版”,然后按照说明或下载适用于所有发行版的VB 二进制包,然后像这样运行安装程序:
cd /path/to/downloaded/file
chmod +x VirtualBox-x.x.xx-xxxxxx-Linux_xxxxx.run
./VirtualBox-x.x.xx-xxxxxx-Linux_xxxxx.run
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
128422 次 |
最近记录: |