6. Compilar el núcleo y los módulos, instalar La Bestia

Una pequeña nota antes de comenzar: si está volviendo a compilar un núcleo con una versión idéntica al que ya está presente en su sistema, primero debe borrar los módulos antiguos. Por ejemplo, si está recompilando 2.6.10, debe borrar el directorio /lib/modules/2.6.10.

La compilación del núcleo y de los módulos, y la posterior instalación de los módulos se hace con las líneas siguientes:

make clean
make all
make modules_install install

Un poco de vocabulario: Cualquier argumento como clean, all, etc., se denominan objetivos. Note que, comenzando con el núcleo 2.6, existe un objetivo denominado all (todo). Si ejecuta este objetivo es lo mismo que ejecutar (en la arquitectura x86) los objetivos bzImage y modules. Esta nueva opción construirá los objetivos preferidos para una arquitectura dada. Antes de 2.6, cada arquitectura tenía un nombre de opción diferente para compilar el núcleo. Si especifica varios objetivos para make como se muestra arriba, se ejecutarán los mismos en orden de aparición. Pero si uno de los objetivos falla, make no continuará más[43].

Veamos los objetivos diferentes y qué es lo que hacen:

[Aviso]Aviso

Es importante respetar el orden de los objetivos, modules_install install, de forma tal que los módulos realmente se instalen primero. De lo contrario initrd estará mal y el núcleo no arrancará correctamente.

Ahora todo está compilado e instalado correctamente, ¡listo para ser probado! Simplemente vuelva a arrancar la máquina y elija el núcleo nuevo en el menú de arranque. Note que todavía está disponible el núcleo antiguo de forma tal que lo puede usar si experimenta problemas con el nuevo. Sin embargo, puede elegir instalar manualmente el núcleo y cambiar los menús de arranque a mano. De esto se trata la sección siguiente.



[43] En este caso, si falla la compilación, significa que hay un error en el núcleo... De ser así, por favor ¡repórtelo!