VirtualBox su gentoo: Kernel Driver not installed

Capita spesso su gentoo di dover/voler aggiornare il kernel, e alcuni software smettono di funzionare. Uno di questi é VirtualBox. Dopo un aggiornamento del kernel si presenta sempre il solito errore:

Questo perchè non sono stati ricompilati i moduli del kernel per allinearli alla nuova versione.

Quello  che dobbiamo fare quindi é ricompilare questi moduli. Ma dal momento che se ne occuperá emerge, se il kernel lo abbiamo ricompilato manualmente, dobbiamo tramite eselect selezionare la nuova versione del kernel. Quindi prima di tutto vediamo che versione del kernel abbiamo installata:

susan Temp # uname -a
Linux susan 3.8.13-gentoo #11 SMP Sat Aug 17 12:00:54 CEST 2013 i686 Intel(R) Core(TM) i3-2330M CPU @ 2.20GHz GenuineIntel GNU/Linux

Ora vediamo invece quale é la versione settata tramite eselect (che poi altri non é che il link alla cartella /usr/src/linux):

susan Temp # eselect kernel list
Available kernel symlink targets:
 [1] linux-3.2.1-gentoo-r2
 [2] linux-3.2.12-gentoo
 [3] linux-3.2.21-gentoo
 [4] linux-3.3.8-gentoo
 [5] linux-3.4-rc7
 [6] linux-3.5.7-gentoo *
 [7] linux-3.7.9-gentoo
 [8] linux-3.7.10-gentoo
 [9] linux-3.8.13-gentoo
 [10] linux-3.10.7-gentoo

Come vedete in questo caso le due versioni differiscono. Quindi dobbiamo prima di tutto selezionare la nuova versione, per fare questo diamo:

# eselect kernel set 9

Nel vostro caso, sostituite 9 con il numero corrispondende alla vostra versione del kernel (attenzione che l’output di eselect puó essere diverso, se avete per esempio meno kernel installati, o magari se ne sono aggiunti altri, etc.). A questo punto lanciamo il comando per ricompilare i moduli del kernel:

emerge -av module-rebuild

Dopo di che diamo i seguenti comandi:

# module-rebuild populate
# module-rebuild rebuild

Il primo permette di ripopolare il database con tutti quei pacchetti che devono installare moduli all’interno del kernel, il secondo invece ricompila questi moduli.

Ora date:

#modprobe vboxdrv

e il problema dovrebbe essere risolto!

 

Leave a Reply

Your email address will not be published. Required fields are marked *