VirtualBox - сбой RTR3InitEx с rc=-1912 (rc=-1912)

Я установил VirtualBox Version 5.1.18 r114002 (Qt5.5.1) на Ubuntu 16.04 LTS, Виртуализировать все (Кали, Windows 10).

Я сталкиваюсь со следующей ошибкой:

Ошибка RTR3InitEx с rc=-1912 (rc=-1912)

Модули ядра VirtualBox не соответствуют этой версии VirtualBox. Установка VirtualBox, видимо, не удалась. проведение

'/ SBIN /vboxconfig'

может исправить это. Убедитесь, что вы не смешиваете версию OSE и PUEL-версию VirtualBox.

где: supR3HardenedMainInitRuntime what: 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)

10 ответов

Решение

Похоже, что ваша установочная версия virtualbox предназначена для 32-битной архитектуры, в то время как вы используете 64-битную операционную систему, которая может быть причиной этой проблемы.

Мой обходной путь - удалить установленную версию из PPA и установить virtualbox из официальных репозиториев.

Чтобы удалить virtualbox, запустите:

sudo apt autoremove --purge virtualbox*

После этого убедитесь, что в вашей системе не установлена ​​другая версия:

dpkg -l 'virtualbox*' | grep ^i

Вы не должны получать никаких выходных данных, также вы можете попробовать запустить virtualbox, чтобы убедиться, что он не установлен.

Затем удалите все связанные PPA из вашего sources.list а также sources.list.d каталог. например:

mkdir ~/apt-tmp
sudo mv /etc/apt/sources.list.d/* ~/apt-tmp

Убедитесь, что нет ничего, кроме официальных источников репозиториев в /etc/apt/sources.list ,

И обновите свои источники:

sudo apt update

Теперь мы можем искать, какие версии доступны для установки:

apt-cache madison virtualbox | grep -iv sources

Который производит вывод как это:

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

Тогда я бы установил последнюю версию, упомянутую в xenial-updates:

sudo apt install virtualbox=5.0.32-dfsg-0ubuntu1.16.04.2

Также 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

Из GUI: чтобы убедиться, что работает правильная версия.

Меню справки -> о виртуальной коробке

Обратите внимание на зеленую подсветку

Если вы установили VirtualBox по официальному руководству и не забыли удалить установленный из репозитория Ubuntu по умолчанию.

Проверить, если virtualbox-dkms установлено:

dpkg -l | grep virtualbox-dkms

Если да, то удалите его и установите dkms

sudo apt-get purge virtualbox-dkms && \
sudo apt-get install dkms

Перестройте модули ядра VirtualBox:

sudo /sbin/vboxconfig 

Таким образом, в моем случае модули ядра не были удалены должным образом.

Вот подробности:

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

Проблема:

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

FIX:

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)

После этого все работает (по крайней мере, в моем случае)

Надеюсь, поможет. Скрыть Смотреть полный журнал активности

Я разместил ответ по адресу https://bugs.launchpad.net/ubuntu/+source/virtualbox/+bug/1736116

Кажется, в вашей системе установлены две отдельные версии VirtualBox!

Я бы порекомендовал вам полностью удалить все версии VirtualBox:

sudo apt-get autoremove 'virtualbox*'

Затем переустановите непосредственно из виртуальной коробки Oracle. Перейдите на страницу загрузки VB, прокрутите вниз до "Дистрибутивы Linux на основе Debian" и следуйте инструкциям или загрузите двоичный пакет VB для всех дистрибутивов, а затем запустите программу установки следующим образом:

cd /path/to/downloaded/file
chmod +x VirtualBox-x.x.xx-xxxxxx-Linux_xxxxx.run
./VirtualBox-x.x.xx-xxxxxx-Linux_xxxxx.run

Если переустановить Virtualbox не работает. Вы должны попробовать установить или переустановить dkms виртуальной коробки

проверьте, есть ли ошибки:

dpkg -P virtualbox-dkms

Если у вас есть ошибка, вероятно, следует попробовать сделать:

sudo apt-get install virtualbox-dkms

Просто apt upgrade virtualbox работал на меня

Если вы хотите использовать последнюю версию virtualbox, вам необходимо удалить модули в папке dkms.

VB 5.1 и более ранние версии помещают модули в misc, а VB 5.0 в ветке хранит их в папке dkms

  1. Очистить все виртуальные окна с помощью apt
  2. Проверьте modinfo vboxdrv чтобы увидеть, если он выводит версию 5.0:

    $ 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
     parm:           force_async_tsc:force the asynchronous TSC mode (int)
    
  3. Если он выводит 5.0, удалите модули в папке dkms:

    $ sudo -i
    # sudo rmmod vboxnetadp vboxnetflt vboxpci vboxdrv 
    # cd /lib/modules/(kernelversion)-generic/updates/dkms
    # rm vbox*
    
  4. Бежать sudo /sbin/rcvboxdrv setup (затем проверьте, modinfo vboxdrv дает правильную версию)

    $ modinfo vboxdrv
    filename:       /lib/modules/4.10.0-42-generic/misc/vboxdrv.ko
    version:        5.2.6 r120293 (0x00290000)
    license:        GPL
    description:    Oracle VM VirtualBox Support Driver
    author:         Oracle Corporation
    srcversion:     4880B21EFF1B605D6402982
    depends:        
    vermagic:       4.10.0-42-generic SMP mod_unload 
    parm:           force_async_tsc:force the asynchronous TSC mode (int)
    

После обновления до 6.0 это сообщение также появилось. Если вы этого не сделали, перезапустите систему, чтобы все новые модули были загружены в ядро. Иногда это так просто.

Убедитесь, что у вас загружены модули vbox:

lsmod | grep vbox

На моей машине у меня есть vboxpci, vboxnetadp, vboxnetflt, а также vboxdrv

Проверьте правильность версии:

modinfo vboxdrv

Очень вероятно, что версия этого модуля будет 5.0.32 rxxxxxx, но вы работаете в Virtualbox 5.1

Если это не так, этот ответ может не помочь решить вашу проблему.

В противном случае это может быть вызвано тем, что вы не удалили модули, оставленные вашей виртуальной коробкой старой версии, и новые модули не будут перезаписаны.

Просто удалите все эти старые модули и перезагрузите компьютер, и это должно решить проблему:

# This command list all files in the same directory of the vboxdrv module
# Double check they are all vbox* modules and are outdated
# Then change "ls" to "rm" to remove all
ls $(dirname $(modinfo vboxdrv | sed -n 's/filename: *(\.*\)/\1/p'))/*

Я удалил virtualbox с помощью команды, приведенной ниже:

sudo apt autoremove --purge virtualbox*

но это не сработало.

Я обнаружил, что старый мод vboxdrv не удалялся, и пришлось вручную удалить vboxdrv.ko из "/lib/modules/$(uname -r)/updates/dkms/".

Другие вопросы по тегам