Los módulos del núcleo VirtualBox no coinciden con la versión de VirtualBox

31

VirtualBox 4.2.12 en Ubuntu 12.04 funcionaba bien hasta que necesitaba instalar el complemento de invitado. Después de su instalación:

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

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

Después de correr 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

Cualquier ayuda es apreciada ...

Gracias...

CoolEulerProject
fuente
Por favor aclare: ¿para qué versión de virtualbox y cómo instaló las adiciones de invitados? ¿Qué versión quieres ejecutar (no hay 4.2.12)? DPKG nos dice que tiene una versión anterior 4.1.12 instalada pero 4.2.6 eliminada. ¿Cómo instalaste virtualbox? Por favor, nombre también la arquitectura del host (amd64 i386?).
Takkat

Respuestas:

44

¡Parece que tienes dos versiones separadas de VirtualBox instaladas!

Le recomendaría que desinstale completamente todas las versiones de VirtualBox:

sudo apt-get autoremove 'virtualbox*'

Luego reinstale directamente desde Oracle. Vaya a la página de descarga de VB , desplácese hacia abajo hasta "Distribuciones de Linux basadas en Debian" y siga las instrucciones.

Vuelva a intentarlo.

Por cierto, no es necesario para el uso grepcon dpkg. Aquí hay una alternativa más agradable a su comando:

dpkg --list 'virtualbox*'
Paddy Landau
fuente
14

Una solución menos intrusiva podría ser:

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

Fuente con más información.

Rikard
fuente
Gracias a esta sugerencia, me di cuenta de que extrañaba completamente virtualbox-dkms. Detuve VBManager, instalé virtualbox-dkms con apt-get, reinicié y todo estaba en orden.
Marco Faustinelli
1
Esto funcionó para mí (y no tenía o no necesitaba instalarlo virtualbox-dkms)
aidan
1
Después de instalar 5.2 desde Oracle, necesitaba ejecutar dpkg-reconfigure virtualbox-5.2para solucionar esto.
NuSkooler
9

Tuve este problema después de cambiar de la versión ubuntu repo a la versión ppa. La causa raíz del problema fue exactamente como se indica en el mensaje de error: la versión del módulo del kernel no coincide. He confirmado esto con

modinfo vboxdrv

que volvió como la versión 5.0. (De ppa, tengo vbox 5.1).

He desinstalado virtualbox-dkms, porque instalarlo también instalaría la versión vbox normal de ubuntu repo. Pero los módulos del kernel todavía estaban entre los módulos que son manejados por DKMS (/ lib / modules / (kernelversion) -generic / updates / dkms /), por lo que ADJUNTO es por eso que los scripts no funcionarían:

Yo he tratado

sudo /sbin/vboxconfig

que aparentemente hizo todo como de costumbre, deteniendo los módulos del núcleo, volviendo a compilar, volviendo a cargar los (supuestamente) nuevos módulos del núcleo. Excepto verificar la versión del módulo, aún apareció 5.0.

Entonces intenté

sudo /sbin/rcvboxdrv setup

con el mismo resultado: sin cambio de versión.

Luego decidí eliminar los módulos porque no me gustaba el hecho de que estaban en la carpeta dkms. Para hacer eso, debe descargar los módulos del núcleo con

sudo rmmod vboxnetadp vboxnetflt vboxpci vboxdrv

luego elimine los archivos del módulo de / lib / modules / (kernelversion) -generic / updates / dkms. Entonces corre

sudo /sbin/rcvboxdrv setup

nuevamente, y voilá los nuevos módulos son v5.1, y ya no están bajo dkms, mis máquinas virtuales se están ejecutando.

Ahora que lo pienso, tal vez los módulos fueron recompilados correctamente en /lib/modules/4.4.0-59-generic/misc/, pero al cargar los módulos dkms podría tener prioridad. Lamentablemente no tengo más tiempo para investigar esto.

ps .: Si realiza esta misma transición de la versión de repositorio a ppa, asegúrese de agregarse a los vboxusers de grupo (recién creados) y luego cierre la sesión y vuelva a iniciarla.

Gábor Kiczenko
fuente
1
Esto me lo arregló en Ubuntu 16.04 después de cambiar a los PPA de Oracle. ¡Muchas gracias!
Josh
¡Finalmente! Eliminar el archivo .so anterior hizo el truco. Reinstalé desde apt y todo parece estar funcionando.
nullsteph
1

Esto me sucedió hoy en Debian 8 (Jessie) después de un parche del kernel. Lo arreglé de la siguiente manera:

  1. su (No uso sudo; si lo hace, entonces anteponga sudo a las líneas a continuación)
  2. dpkg-reconfigure virtualbox-dkms
  3. dpkg-reconfigure virtualbox
  4. /etc/init.d/virtualbox restart

Gracias a Rikard / hg8 por el consejo anterior en los pasos 2 y 3. En mi caso, es posible que no fueran necesarios, pero se sintió bien en cualquier caso.

Freeb
fuente
Tuve el mismo problema al mover VB de 5.0 a 5.2. Seguí tus pasos y funcionó, pero en el paso 3, cambia virtualbox a virtualbox-5.2 si lo has instalado.
TommyDo
1

En mi caso, la virtualbox-dkmsversión simplemente no coincide con los paquetes restantes:

$ 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

Simplemente lo reinstalé:

$ 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

y la VM comenzó sin errores.

PJ_Finnegan
fuente