Cómo instalar VirtualBox en Ubuntu con Secure Boot habilitado
Instalar VirtualBox en Ubuntu suele ser sencillo, pero cuando Secure Boot está habilitado pueden aparecer problemas al cargar los módulos del kernel de VirtualBox.
Uno de los errores que pueden aparecer es rc=-1908, que indica que VirtualBox no puede utilizar correctamente los módulos necesarios del kernel.
En esta guía aprenderás cómo instalar VirtualBox en Ubuntu con Secure Boot habilitado, cómo comprobar si Secure Boot está activo, cómo registrar una clave MOK (Machine Owner Key) y cómo comprobar que los módulos de VirtualBox funcionan correctamente.
El procedimiento está pensado para Ubuntu 22.04 y Ubuntu 24.04 utilizando el paquete .deb de VirtualBox.
Índice
- ¿Qué necesitas antes de instalar VirtualBox?
- Comprobar si Secure Boot está habilitado
- Descargar VirtualBox para Ubuntu
- Instalar VirtualBox en Ubuntu
- ¿Por qué aparece el error rc=-1908?
- ¿Qué es MOK?
- Cómo solucionar rc=-1908 con MOK
- ¿Qué hacer si rcvboxdrv setup muestra un error?
- Cómo comprobar que VirtualBox funciona correctamente
- Errores frecuentes con VirtualBox y Secure Boot
- Preguntas frecuentes sobre VirtualBox en Ubuntu y Secure Boot
¿Qué necesitas antes de instalar VirtualBox?
Antes de empezar necesitas:
- Ubuntu 22.04 o Ubuntu 24.04.
- Permisos de administrador mediante sudo.
- Secure Boot habilitado si quieres seguir utilizando VirtualBox con Secure Boot activo.
- Los paquetes necesarios para construir los módulos del kernel de VirtualBox,incluyendo DKMS, las cabeceras del kernel y las herramientas de compilación.
Puedes instalar estos paquetes antes de comenzar:
sudo apt update
sudo apt install build-essential dkms linux-headers-$(uname -r)Estos paquetes permiten que los módulos del kernel de VirtualBox puedan construirse para el kernel que estás utilizando.
Puedes comprobar la versión de Ubuntu con:
lsb_release -a
También es recomendable comprobar qué kernel estás utilizando:
uname -r
Los módulos de VirtualBox se construyen para el kernel que está ejecutándose. Por eso, si posteriormente cambias de kernel, puede ser necesario volver a construirlos.
Comprobar si Secure Boot está habilitado
Antes de instalar VirtualBox puedes comprobar el estado de Secure Boot desde la terminal:
mokutil --sb-stateSi Secure Boot está activo, verás:
SecureBoot enabledSi aparece:
SecureBoot disabledSecure Boot está deshabilitado y no tendrás que autorizar los módulos de VirtualBox mediante MOK por este motivo.
Descargar VirtualBox para Ubuntu
VirtualBox se distribuye para Ubuntu mediante paquetes .deb.
Descarga el paquete que corresponda a tu versión de Ubuntu desde la página oficial de Oracle VirtualBox.
Por ejemplo:
- Ubuntu 22.04 → paquete Ubuntu~jammy
- Ubuntu 24.04 → paquete Ubuntu~noble
El nombre del archivo cambia con cada versión de VirtualBox. Actualmente la rama 7.2 tiene disponible la versión 7.2.20, con paquetes específicos para Ubuntu 22.04 y Ubuntu 24.04.
Una vez descargado el archivo .deb, abre una terminal y accede a la carpeta donde lo hayas guardado.
Por ejemplo:
cd ~/DescargasPuedes comprobar que el paquete está ahí con:
ls *.deb
Instalar VirtualBox en Ubuntu
Para instalar el paquete .deb, utiliza dpkg.
Si tienes únicamente el paquete de VirtualBox en esa carpeta, puedes utilizar:
sudo dpkg -i virtualbox-7.2_*.debA continuación, comprueba y corrige las dependencias que puedan faltar:
sudo apt -f installDurante la instalación, VirtualBox intentará preparar los módulos necesarios para el kernel de Ubuntu.
Si Secure Boot está habilitado, es posible que durante este proceso aparezca una pantalla de configuración que indique que se ha generado una Machine Owner Key (MOK).
¿Por qué aparece el error rc=-1908?
Si después de instalar VirtualBox inicias una máquina virtual y aparece un error relacionado con rc=-1908, el problema puede estar relacionado con los módulos del kernel de VirtualBox y Secure Boot.

Secure Boot impide que se carguen determinados módulos del kernel que no estén correctamente autorizados.
VirtualBox utiliza varios módulos del kernel, entre ellos:
- vboxdrv
- vboxnetadp
- vboxnetflt
- vboxpci
Con Secure Boot habilitado, estos módulos pueden necesitar estar firmados y autorizados para poder cargarse.
Por eso es posible tener VirtualBox correctamente instalado y, aun así, no poder iniciar una máquina virtual.
Antes de intentar solucionar el problema mediante MOK
Comprueba que los módulos de VirtualBox se hayan construido correctamente.
Ejecuta:
sudo rcvboxdrv setup
Si este comando muestra un error durante la construcción, primero debes solucionar ese problema. Secure Boot y MOK son una etapa posterior: no sirve de mucho autorizar los módulos si estos no se han podido construir correctamente.
Cuando rcvboxdrv setup termine sin errores, puedes comprobar el módulo principal:
modinfo vboxdrv
y:
lsmod | grep vboxdrv
Si los módulos existen pero Secure Boot impide cargarlos, entonces debes continuar con el proceso de autorización mediante MOK explicado en esta guía.
¿Qué es MOK?
MOK significa Machine Owner Key.
Es un mecanismo utilizado en sistemas Linux con Secure Boot que permite registrar una clave de confianza para autorizar módulos de terceros.
En este caso, la clave permite que los módulos del kernel de VirtualBox puedan ser aceptados por el sistema cuando Secure Boot está habilitado.
La contraseña que introduces durante este proceso no es tu contraseña de Ubuntu.
Se utiliza posteriormente, durante el arranque, para confirmar el registro de la clave MOK.

Cómo solucionar rc=-1908 con MOK
1. Crear la contraseña MOK
Si durante la instalación aparece la pantalla de configuración de MOK, selecciona:
- ACEPTAR

A continuación, el sistema te pedirá que introduzcas una contraseña.
Elige una contraseña que puedas recordar porque tendrás que utilizarla después de reiniciar.

En este momento:
- se genera la clave MOK.
- los módulos necesarios pueden ser preparados y firmados.
- la clave todavía no está registrada en el sistema de confianza de Secure Boot.
2. Reiniciar Ubuntu
Cuando hayas terminado la instalación y la configuración de MOK, reinicia el sistema:
sudo rebootDurante el siguiente arranque debería aparecer una pantalla de configuración de MOK.

3. Seleccionar Enroll MOK
En el menú azul de MOK selecciona:
- Enroll MOK

Después:
- Continue

A continuación confirma seleccionando:
- Yes

El sistema te pedirá la contraseña que introdujiste durante la instalación.
Introdúcela y confirma.

Finalmente, el equipo se reiniciará.
Este es uno de los pasos más importantes de todo el proceso.
Si la clave no se registra correctamente, Secure Boot seguirá sin confiar en los módulos de VirtualBox.
4. Comprobar los módulos de VirtualBox
Una vez que Ubuntu haya arrancado de nuevo, abre una terminal.
Si los módulos se construyeron correctamente durante la instalación, puedes comprobar que vboxdrv está disponible con:
lsmod | grep vboxdrv
También puedes comprobar la información del módulo con:
modinfo vboxdrv
Si vboxdrv aparece correctamente, los módulos de VirtualBox están disponibles para el kernel.
Si vboxdrv no aparece, consulta la sección ¿Qué hacer si rcvboxdrv setup muestra un error? para comprobar la construcción de los módulos y los headers del kernel.

¿Qué hacer si rcvboxdrv setup muestra un error?
Los módulos de VirtualBox tienen que construirse para el kernel que estás utilizando.
Comprobar la versión del kernel
uname -r
Este comando muestra la versión del kernel que está utilizando Ubuntu en ese momento.
Comprobar si existe el directorio de desarrollo
Los módulos de VirtualBox necesitan los headers correspondientes al kernel para poder compilarse.
Comprueba si están disponibles en el directorio correspondiente con:
ls /lib/modules/$(uname -r)/build
Si el directorio no existe, instala los headers del kernel.
sudo apt update
sudo apt install linux-headers-$(uname -r)También es importante comprobar que DKMS y las herramientas necesarias para compilar los módulos estén instalados:
sudo apt install build-essential dkms
Después vuelve a intentar construir los módulos:
sudo rcvboxdrv setup
Si el comando termina correctamente, comprueba el módulo vboxdrv
lsmod | grep vboxdrv

También puedes consultar información sobre el módulo con:
modinfo vboxdrv

Si rcvboxdrv setup continúa mostrando un error, revisa el registro específico de VirtualBox:
sudo less /var/log/vbox-setup.log
Este archivo puede mostrar el motivo concreto por el que no se han podido construir los módulos.
Si el módulo existe pero no está cargado
Si modinfo vboxdrv muestra información del módulo pero lsmod | grep vboxdrv no devuelve ningún resultado, puedes intentar cargarlo manualmente:
sudo modprobe vboxdrv
Después vuelve a comprobarlo:
lsmod | grep vboxdrv
Cómo comprobar que VirtualBox funciona correctamente
Después de registrar la clave MOK y reconstruir los módulos, comprueba que VirtualBox puede utilizarlos.
Ejecuta:
lsmod | grep vbox
También puedes comprobar específicamente vboxdrv:
lsmod | grep vboxdrvSi aparece vboxdrv, el módulo principal de VirtualBox está cargado.
Finalmente, abre VirtualBox y crea una máquina virtual de prueba.
Si la máquina virtual arranca correctamente, Secure Boot y los módulos de VirtualBox están funcionando correctamente.
Errores frecuentes con VirtualBox y Secure Boot
rc=-1908 al iniciar una máquina virtual
Este error suele estar relacionado con los módulos del kernel de VirtualBox cuando Secure Boot está habilitado.
Ejecuta:
mokutil --sb-stateDespués verifica si vboxdrv está cargado:
lsmod | grep vboxdrvSi no aparece, revisa el proceso MOK y vuelve a ejecutar:
sudo rcvboxdrv setupNo aparece el menú azul de MOK
Si durante la instalación se generó una clave MOK pero no aparece el menú para registrarla, comprueba que la configuración de MOK quedó pendiente y reinicia nuevamente el equipo.
También puedes comprobar el estado de las claves MOK con:
mokutil --list-enrolledvboxdrv no aparece en lsmod
Si al ejecutar:
lsmod | grep vboxdrvno devuelve ningún resultado, comprueba primero si el módulo existe:
modinfo vboxdrvSi modinfo tampoco encuentra el módulo, intenta reconstruir los módulos de VirtualBox:
sudo rcvboxdrv setupSi aparece un error, comprueba que estén instalados DKMS, las herramientas de compilación y los headers del kernel:
sudo apt install build-essential dkms linux-headers-$(uname -r)
Después vuelve a ejecutar:
sudo rcvboxdrv setup
Si el proceso termina correctamente pero vboxdrv sigue sin aparecer, intenta cargarlo manualmente:
sudo modprobe vboxdrv
Y vuelve a comprobar:
lsmod | grep vboxdrv
Si modprobe muestra un error relacionado con Secure Boot, comprueba su estado:
mokutil --sb-state
En ese caso, continúa con el proceso de autorización mediante MOK explicado anteriormente.
VirtualBox deja de funcionar después de actualizar Ubuntu
Una actualización del kernel puede requerir que los módulos de VirtualBox vuelvan a construirse.
Comprueba el kernel actual:
uname -rAsegúrate de tener instalados los headers correspondientes y las herramientas necesarias:
sudo apt install build-essential dkms linux-headers-$(uname -r)
Después reconstruye los módulos:
sudo rcvboxdrv setup
Comprueba que vboxdrv esté disponible:
modinfo vboxdrv
y que esté cargado:
lsmod | grep vboxdrv
¿Tengo que desactivar Secure Boot para utilizar VirtualBox?
No necesariamente.
Puedes mantener Secure Boot habilitado y autorizar los módulos de VirtualBox mediante MOK.
Desactivar Secure Boot es otra posibilidad, pero no es necesario simplemente para utilizar VirtualBox.
Si quieres mantener la protección de Secure Boot, lo más adecuado es solucionar la autorización de los módulos en lugar de desactivarlo únicamente para evitar el problema.
Preguntas frecuentes sobre VirtualBox en Ubuntu y Secure Boot
¿Puedo instalar VirtualBox en Ubuntu con Secure Boot activado?
Sí. No es necesario desactivar Secure Boot para utilizar VirtualBox. Cuando Secure Boot está habilitado, los módulos del kernel de VirtualBox deben estar correctamente autorizados para poder cargarse. El registro de una clave MOK permite autorizar estos módulos manteniendo Secure Boot activo.
¿Por qué aparece el error rc=-1908 en VirtualBox?
El error rc=-1908 puede aparecer cuando VirtualBox no puede cargar correctamente sus módulos del kernel. Con Secure Boot habilitado, una de las causas habituales es que los módulos no estén autorizados. En ese caso, comprueba el registro de la clave MOK y verifica que vboxdrv esté cargado.
lsmod | grep vboxdrv
¿Cómo puedo comprobar si Secure Boot está activado en Ubuntu?
Puedes comprobar el estado de Secure Boot desde la terminal utilizando:
mokutil --sb-state
Si aparece SecureBoot enabled, Secure Boot está activo. Si aparece SecureBoot disabled, está deshabilitado.
¿Qué es una clave MOK y para qué sirve en VirtualBox?
MOK (Machine Owner Key) permite registrar una clave de confianza en el sistema para autorizar determinados módulos cuando Secure Boot está habilitado. En VirtualBox, este mecanismo permite que los módulos del kernel necesarios para ejecutar las máquinas virtuales puedan cargarse sin tener que desactivar Secure Boot.
¿Qué hago si VirtualBox deja de funcionar después de actualizar Ubuntu?
Una actualización del kernel puede requerir que los módulos de VirtualBox se vuelvan a construir para el nuevo kernel.
Comprueba primero el kernel actual:
uname -r
Después reconstruye los módulos de VirtualBox:
sudo rcvboxdrv setup
Si el proceso termina correctamente, comprueba que vboxdrv esté disponible:
modinfo vboxdrv
y que esté cargado:
lsmod | grep vboxdrv
Si rcvboxdrv setup muestra un error, revisa /var/log/vbox-setup.log para conocer la causa concreta.