Модулі ядра VirtualBox не відповідають версії VirtualBox


31

VirtualBox 4.2.12 на Ubuntu 12.04 працював нормально, поки мені не потрібно було встановити гостьовий аддітон. Після його встановлення:

 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?).
Таккат

Відповіді:


44

У вас, здається, встановлені дві окремі версії VirtualBox!

Я рекомендую повністю видалити всі версії VirtualBox:

sudo apt-get autoremove 'virtualbox*'

Потім перевстановіть безпосередньо з Oracle. Перейдіть на сторінку завантаження VB , прокрутіть униз до "Дистрибуції на базі Debian" та виконайте вказівки.

Потім спробуйте ще раз.

До речі, вам не потрібно використовувати grepз dpkg. Ось приємніша альтернатива вашій команді:

dpkg --list 'virtualbox*'

14

Менш нав'язливим рішенням може бути:

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

Джерело з додатковою інформацією.


Завдяки цій пропозиції я зміг зрозуміти, що я повністю пропустив virtualbox-dkms. Я зупинив VBManager, встановив virtualbox-dkms з apt-get, перезавантажився і все було в порядку.
Марко Фаустінеллі

1
Це працювало для мене (і я не мав або не потребував встановлення virtualbox-dkms)
aidan

1
Після встановлення 5.2 від Oracle мені потрібно було запустити, dpkg-reconfigure virtualbox-5.2щоб виправити це.
NuSkooler

9

У мене була ця проблема після переходу з версії ubuntu repo на версію ppa. Першопричиною проблеми було саме те, що вказано у повідомленні про помилку: невідповідність версії модуля ядра. Я це підтвердив

modinfo vboxdrv

який повернувся як версія 5.0. (З ppa, у мене vbox 5.1).

Я видалив virtualbox-dkms, тому що встановивши його, він також встановив звичайну версію vbox з ubuntu repo. Але модулі ядра все ще були серед модулів, якими керує DKMS (/ lib / module / (kernelversion) -generic / updates / dkms /), тому я здогадуюсь, тому сценарії не працюватимуть:

я намагався

sudo /sbin/vboxconfig

яка, здавалося б, робила все як завжди, зупиняючи модулі ядра, перекомпонуючи, перезавантажуючи (нібито) нові модулі ядра. За винятком перевірки версії модуля, все ще з'явився 5.0.

Потім я спробував

sudo /sbin/rcvboxdrv setup

з тим самим результатом: не змінюється версія.

Тоді я вирішив видалити модулі, тому що мені не сподобалося, що вони знаходяться в папці dkms. Для цього вам потрібно розвантажити модулі ядра

sudo rmmod vboxnetadp vboxnetflt vboxpci vboxdrv

потім видаліть файли модулів з / lib / module / (kernelversion) -generic / updates / dkms. Потім бігайте

sudo /sbin/rcvboxdrv setup

знову ж таки, і нові модулі v5.1, і більше не в dkms, мої VM працюють.

Тепер, коли я думаю про це, можливо, модулі були правильно перекомпільовані в /lib/modules/4.4.0-59-generic/misc/, але при завантаженні dkms модулі можуть мати пріоритет. На жаль, у мене немає більше часу досліджувати це.

пс .: Якщо ви здійснили цей самий перехід від версії repo до ppa, обов’язково додайте себе до (щойно створеної) групи vboxusers, а потім вийдіть із системи та назад.


1
Це вирішило для мене в Ubuntu 16.04 після переходу на Oracle PPA. Дуже дякую!
Джош

Нарешті! Видалення старого файлу .so зробило свою справу. Я перевстановився з apt, і все, здається, працює.
nullsteph

1

Це сталося зі мною сьогодні на Debian 8 (Jessie) після виправлення ядра. Я зафіксував це так:

  1. su (Я не використовую судо; якщо ви це робите, то додайте судо до рядків нижче)
  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

і ВМ запускався без помилок.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.