Virtualbox: pantallazo azul en Win7 64 bits virtualizado

Situacion inicial: Ubuntu 14.04.1 LTS de 32 bits, 330 gigas de disco duro, una sola partición, ~40% de capacidad disponible. Todo funciona perfectamente, a excepción del Win7 virtualizado, que da pantallos azules de forma totalmente aleatoria.

Lo cierto es que arrancar una máquina virtual de 64 bits (v.g. Win7) en un entorno de 32 bits (Ubuntu + Virtualbox) ha demostrado ser la causa del problema. La máquina parecía funcionar (mucho más lenta, eso sí) hasta que aparecía el pantallazo azul.

La solución pasa por cambiar a la última versión de Ubuntu de 64 bits (si tu hardware lo permite) e instalar el paquete correspondiente de Virtualbox de 64 bits desde su página web. He aquí los pasos que seguí:
Sigue leyendo

Virtualbox: No suitable module for running kernel found

Recientemente, al actualizar el kernel en mi Ubuntu 14.04, Virtualbox muestra el siguiente error:

Kernel driver not installed (rc=-1908)
The VirtualBox Linux kernel driver (vboxdrv) is either not loaded or there is a permission problem with /dev/vboxdrv. Please reinstall the kernel module by executing '/etc/init.d/vboxdrv setup' as root. If it is available in your distribution, you should install the DKMS package first. This package keeps track of Linux kernel changes and recompiles the vboxdrv kernel module if necessary.

Tras ejecutar el comando no sucede nada. Al levantar el servicio manualmente:
sudo /etc/init.d/virtualbox start
Aparece el error No suitable module for running kernel found

Esto es lo que hice para solucionar el problema:

Comprobar que las librerías del nuevo kernel están instaladas:

uname -r
dpkg -l | grep linux-headers
sudo apt-get install linux-headers-$(uname -r)

Reinstalar los fuentes de virtualbox y recompilarlos:

sudo apt-get install virtualbox-source module-assistant
sudo m-a prepare
sudo m-a a-i virtualbox-source

Reconfigurar dkms y cargar el módulo:

sudo dpkg-reconfigure virtualbox-dkms
sudo modprobe vboxdrv

Una vez hecho esto, /etc/init.d/virtualbox start ya debería funcionar de nuevo ;)

Hard reset a la fonera 2100

  1. Apretar el botón de reset, esperar 10 segundos y desenchufar la alimentación mientras se mantiene pulsando el botón de reset
  2. Esperar 45 segundos y liberar el botón de reset, enchufar la alimentación y esperar hasta que se encienda el led de WLAN y entonces apretar el botón de reset durante 10 segundos.

Eliminando kernels viejos

Cuando /boot tiene su propia partición y además es pequeña (como suele ocurrir en los servidores cloud), puede pasar que acabe llenándose con el tiempo por la acumulación de kernels viejos. Aquí, una chuletilla recordatoria que te ayudará a hacer la limpieza de vez en cuando:

Averiguamos qué versión estamos usando (conviene mantener las dos últimas):
uname -r
Listamos todos los kernels instalados:
dpkg -l | grep linux-image
También las cabeceras:
dpkg -l | grep linux-headers
Desinstalando lo viejo:
sudo apt-get purge linux-image-3.0.0-xx-generic
sudo apt-get purge linux-headers-3.0.0-xx