
L'errore è dovuto al fatto che i moduli di VirtualBox attualmente installati sono compilati per un kernel diverso da quello che si sta usando. In teoria VirtualBox dovrebbe in automatico compilare i moduli se c'è un cambiamento del kernel ma a volte e per motivi a dir poco ignoti questo non avviene.
Come consigliato dalla finestra di errore per poter risolvere il problema dare il comando da terminale come root:
- Codice: Seleziona tutto
/etc/init.d/vboxdrv setup
o con l'ausilio di sudo da utente "normale":
- Codice: Seleziona tutto
sudo /etc/init.d/vboxdrv setup
Quello che dovrebbe accadere è la ricompilazione ed il caricamento dei moduli per il nuovo kernel. Dovreste avere una cosa del genere:
* Stopping VirtualBox kernel module
* done.
* Recompiling VirtualBox kernel module
* done.
* Starting VirtualBox kernel module
* done.
Può accadere però che vi venga dato l'errore di comando non trovato:
/etc/init.d/vboxdrv: command not found
Pare che questo succeda in quanto il sistema partendo con il nuovo kernel vada a rinominare il file vboxdrv in vboxdrv.dpkg-bak e, quindi, come si può immaginare il file non viene trovato. Per risolvere il problema andiamo a rinominare il file da utente root:
- Codice: Seleziona tutto
mv /etc/init.d/vboxdrv.dpkg-bak /etc/init.d/vboxdrv
o tramite sudo da utente "normale":
- Codice: Seleziona tutto
sudo mv /etc/init.d/vboxdrv.dpkg-bak /etc/init.d/vboxdrv
A questo punto si può avviare VirtualBox per vedere se in automatico ricompila i moduli.
In caso negativo ridare il comando da root:
- Codice: Seleziona tutto
/etc/init.d/vboxdrv setup
o con l'ausilio di sudo da utente "normale":
- Codice: Seleziona tutto
sudo /etc/init.d/vboxdrv setup
e rilanciare VirtualBox.
N.B.: per gli utenti di Ubuntu, Fedora e Mandriva è consigliato installare il pacchetto DKMS.

