Reinstalar módulos externos al kernel

Tras actualizar el kernel, en caso de que use un driver gráfico privativo -de NVIDIA o ATI, por ejemplo-, es probable que los controladores gráficos no funcionen, impidiéndole iniciar las X. La solución es recompilar el driver. De igual forma, cualquier otro módulo externo al propio kernel dejará de funcionar hasta que sea recompilado.

Por ello, tras cada actualización del kernel, es necesario salir a un terminal tty, detener las X (/etc/init.d/xdm stop), descargar el módulo a recompilar (modprobe -r nombre-modulo) y recompilarlo (emerge -avl nombre-modulo). Y por último volver a iniciar las X (/etc/init.d/xdm start) o la máquina (shutdown -r 0) en caso de querer empezar a usar el nuevo kernel.

Esta tarea es bastante tediosa, especialmente en caso de tener varios módulos externos. Por ello en gentoo existe una herramienta que le simplificará este proceso. Esta herramienta es sys-kernel/module-rebuild, y fue diseñada para mantener una base de datos con los módulos externos al kernel, y recompilarlos cuando usted se lo ordene.

Una vez instalada vía Portage con emerge -av sys-kernel/module-rebuild, tan solo debe poblar la base de datos con la lista de módulos que deben ser recompilados, y tras cada actualización del kernel indicarle a module-rebuild que recompile los módulos de su base de datos. Esto se consigue con:

1.- Poblar la base de datos
Puede dejar esta tarea a module-rebuild, para ello tan solo debe ejecutar module-rebuild populate. En caso de que la autodetección deje algún módulo fuera de la base de datos, puede añadirlo manualmente usando el comando add, como por ejemplo, module-rebuild add media-video/nvidia-kernel-1.0.7174.

2.- Recompilar los ebuild 
Tras cada actualización del kernel, deberá indicarle a module-rebuild que recompile los módulos contenidos en la base de datos, para ello debe ejecutar module-rebuild rebuild, quien a continuación le mostrará una cuenta regresiva de cinco segundos así como la lista de los módulos que van a ser recompilados. En caso de no querer continuar con el proceso, lo puede interrumpir pulsando ctrl+c antes de que termine la cuenta regresiva.

0 comentarios:

Publicar un comentario

Recuerde que puede utilizar algunos códigos HTML como <b>para negrita</b>, <i>para cursiva</i> y <a href="URL">para enlaces</a>.