16 de febrero de 2008

Recompilar módulo Virtualbox al actualizar Kernel

El pasado 12 de febrero se liberó una nueva actualización del kernel para la versión estable de Debian (Etch). Al instalar dicha actualización e iniciar el sistema con el nuevo kernel, el programa de virtualización Virtualbox, al igual que ocurre con Vmware Server, deja de funcionar al no tener compilado el módulo para la nueva versión del kernel. A continuación puedes ver el error que nos daría al ejecutar el programa desde una terminal (Konsole):

$ VirtualBox
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (2.6.18-6-686) or it failed to
load. Please recompile the kernel module and install it by

sudo /etc/init.d/vboxdrv setup

You will not be able to start VMs until this problem is fixed.


Al contrario que ocurre con Vmware Server (donde tenemos que ir contestando innumerables preguntas para recompilar los módulos para el nuevo kernel), recompilar el módulo para Virtualbox (vboxdrv) es una tarea muy sencilla. Simplemente debes iniciar sesión como usuario root en una terminal (Konsole) y ejecutar el comando siguiente:

$ su -
password:

# /etc/init.d/vboxdrv setup
Stopping VirtualBox kernel module: vboxdrv.
Recompiling VirtualBox kernel module: vboxdrv.
Starting VirtualBox kernel module: vboxdrv.

Ya puedes iniciar Virtualbox.


NOTA:
Para instalar ésta nueva versión del kernel (2.6.18-6-686) y recompilar los módulos nvidia, fglrx, ó ipw3945, puedes seguir ésta serie de guías que publiqué en septiembre:

1. Instalar nuevo kernel
2. Recompilar módulo "nvidia"
3a. Recompilar módulo ATI "fglrx" - Antigua Versión
3b. Recompilar módulo ATI "fglrx" - Nueva versión con soporte AIGLX para instalar BERYL
4. Recompilar módulo "ipw3945" - Tarjeta inalámbrica


Saludos y suerte.
Domi - Gran Canaria (Islas Canarias)

9 comentarios:

Anónimo dijo...

Hola buen consejo pero a mi no me resulto ahora, actualmente estoy con debian lenny y con un kernel para k7 pero no puedo hacer arrancar virtual box y cada vez que necesito virtual box tengo que reiniciar mi equipo y empezar a trabajar con el kernel anterior y en ese kernel tengo problemas con kde y los usb (no se automontan) pero si trabajo con gnome normal. que sera ahora voy a intentar volver a actualizar mi equipo para ver que pasa.

Otra cosa cual es mejor el virtualbox que se descarga de la pagina oficial o el ose virtual box que diferencias y ventajas existen? agradeceria mucho cualquier ayuda

saludos
williams

Anónimo dijo...

Bueno al querer recompilar el virtual box me salia el mensaje de

vboxdrv: Trying to deactivate the NMI watchdog permanently...
vboxdrv: NMI watchdog either active or at least initialized. Please disable the NMI
vboxdrv: watchdog by specifying 'nmi_watchdog=0' at kernel command line.


asi que hize caso a la sugerencia y le agregue 'nmi_watchdog=0' al inicio de mi kernel y todo ok, ahora lo unico que me falta averiguar es que significa eso o para que sirve :) .

saludos

williams

Romario dijo...

Hola Willi@ms.
Muchas gracias por compartir tu experiencia.

Saludos.
Domi

Anónimo dijo...

Hola, y gracias por la ayuda...

Uso debian lenny 64 bits, mi problema es el mismo, sin embargo luego de solucionarlo siguiendo los pasos del '/etc/init.d/vboxdrv setup' me crea nuevamente el modulo, y puedo usar el virtualbox; sin embargo, cuando quiero volver a usar el vbox otro día, me vuelve a salir el mismo error, y nuevamente tengo que compilar el módulo '/etc/init.d/vboxdrv setup' para poder usar el vbox, y la historia se repite cuando apago la cpu o reinicio, y verificando en '/dev/' no existe el 'vboxdrv', solo aparece cuando vuelvo a compilar el módulo.

He probado con la v1.5.6, la v1.6 y hasta el que viene con el lenny virtualbox-ose, pero siempre es el mismo problema....

El kernel linux es el 2.6.24-1-amd64. Tengo instalado el linux-headers, pero igual.....

todos los pasos los hago como #..

gracias por la ayuda...

Romario dijo...

Hola Yaxel84.

La verdad que no se que puede ser. Si siempre inicias con el mismo kernel, deberías tener el driver configurado.

Si has conseguido solucionarlo, te agradecería que publicarlas la solución. En caso de que todavía no te funcione, prueba a ver si tienes el módulo compilado. Ejecuta éste comando a ver que te sale y compara con la salida en mi equipo.

(como root)
# find / -iname vboxdrv
/sys/module/vboxdrv
/sys/class/misc/vboxdrv
/dev/vboxdrv
/etc/init.d/vboxdrv

Saludos y suerte.
Domi

N0Z dijo...

Hola trato de compilar el modulo pero me sale:

noz:/home/nozelf# /etc/init.d/vboxdrv.sh setup
bash: /etc/init.d/vboxdrv.sh: No existe el fichero o el directorio

hago:

noz:/home/nozelf# find / -iname vboxdrv
/dev/vboxdrv
/dev/.udev/names/vboxdrv
/sys/class/misc/vboxdrv
/sys/module/vboxdrv

y si está, nose cual es el problema. la version es la ose.

Anónimo dijo...

El mismo error se produjo hace una par de días. Muchas gracias por la solución, me funciono perfectamente.

Solo una cosa, yo entro más fácilmente como root con $sudo -s, el método que das no me funciono.

Saludos!!!

poncho dijo...

hola que tal he buscado y buscado respuesta a mi problema pero aun no logro encontrar la solución instale un virtualbox 4.1 sobre linux red hat enterprise 6 todo iba bien al intentar instalar windows me salio el sig error Kernel driver not installed (rc=-1908)
asi que investige un poquito y le di la siguiente linea en una terminal /etc/init.d/vboxdrv setup pero me da el siguiente mensaje de error: Stopping VirtualBox kernel modules [ OK ]
Uninstalling old VirtualBox DKMS kernel modules [ OK ]
Trying to register the VirtualBox kernel modules using DKMSError! echo
Your kernel headers for kernel 2.6.32-71.el6.x86_64 cannot be found at
/lib/modules/2.6.32-71.el6.x86_64/build or /lib/modules/2.6.32-71.el6.x86_64/source.
[FALLÓ]
(Failed, trying without DKMS)
Recompiling VirtualBox kernel modules [FALLÓ]
(Look at /var/log/vbox-install.log to find out what went wrong)


y de ahi no paso ojala y me puedas ayudar gracias

online pharmacy dijo...
Este comentario ha sido eliminado por un administrador del blog.