Por todo ello, me he decidido a escribir un breve mini-how-to de cómo se ha de compilar el Kernel, tanto en su rama 2.6.X como en la 2.4.X con sus pasos principales y cómo adecuar los gestores de arranque, tanto Lilo como Grub, para poder iniciar con el nuevo Kernel sin perder los anteriores, claro.
Dicho esto, empezaré por la rama 2.6.X...(sigue)
Compilación del Kernel: rama 2.6.X Esta es la rama estable más actual del Kernel, cuyo mantenedor oficial es Andrew Morton.
Lo primero que debemos hacer es bajar nuestros fuentes del núcleo de cualquier mirror, podeís hacerlo cómodamente desde la web de Todo-Linux, que con nuestro gestor de versiones estareís en todo momento informados de las versiones nuevas del Kernel que se liberan.
Una vez tenemos los fuentes del núcleo bajados, estos pueden estar en dos formatos:
linux-2.6.7.tar.bz2
linux.2.6.7.tar.gz
Tengamos el que tengamos, lo moveremos al directorio /usr/src/ con la orden, mv: mv linux-2.6.7.tar.bz2 /usr/src/ && cd /usr/src/
Una vez ahí los descomprimiremos de la siguiente forma:
bzip2 -dc | tar xvf - linux-2.6.7.tar.bz2 tar -zxvf linux.2.6.7-tar.gz
Tras estas ordenes de decompresión de ficheros, se creará un nuevo directorio en /usr/src/ que será /usr/src/linux-2.6.7, al cual debemos entrar, para ello:
cd /usr/src/linux-2.6.7
Ya tenemos todo lo necesario para empezar a incluir o quitar cosas de nuestro futuro Kernel.
Hay diversas formas de hacer este proceso, las principales son:
make config
make menuconfig
make xconfig
Yo recomiendo encarecidamente las dos últimas, para gente que esté en sus primeras compilaciones recomiendo sin dudar el make xconfig
Estas ordenes deben ejecutarse dentro de /usr/src/linux-2.6.7/
Vereis como se abren distintos tipos formas de compilar el Kernel, si habeis elegido make config (desaconsejado) tendreís una compilación en modo texto sin posibilidad de volver atrás, por lo que un error en las últimas partes de la selección de módulos conllevaría una pérdida total del tiempo.
Si elegíis make menuconfig tendreis unos menús basados en diálogos bastante cómodos para manejar con el teclado.
Si por el contrario os decantais por make xconfig (recomendado) tendreis una compilación amigable, con "ventanas", menus intuitivos y sobretodo ratón.
No vamos a entrar de lleno en las opciones que se dan en el Kernel ya que eso nos llevaría horas y este do*****ento no sería un mini-how-to ;-).
Aun así, cada opción del Kernel está acompañada de una extensa explicación sobre qué es esa opción y qué representa. Al final de cada menú hay frases del tipo If you're unsure say Y hacedle caso :-).
Sólo quiero hacer hincapie en que es MUY IMPORTANTE dar soporte para nuestro sistema de ficheros (ext3, ReiserFS, xfs..) en el Kernel, ya que sino obtendremos un kernel panic al arrancar y nuestro nuevo núcleo nunca verá la luz.
Los soportes para sistemas de ficheros están en:
File Systems, casi al final de los menús.
Una vez seleccionado lo que queremos en nuestro Kernel ya sean módulos o no, guardamos los cambios y procedemos a la compilación en sí.
Nos convertimos en super usuario con la orden:
su -
Ya somos super usuarios pues ahora bastará hacer:
make
make modules
make install
make modules_install
Hay gente que prefiere enlazar todos los mandatos con && de esta forma:
make && make modules && make install && make modules_install
Yo, personalmente, prefiero hacerlo uno a uno por si falla algo saber en qué pasó falló y poner remedio a tal.
Con estos mandatos, si ninguno da un error, ya tendremos nuestro Kernel compilado, instalado y nuestro gestor actualizado, solo faltará reiniciar y probar nuestro nuevo núcleo.
Compilación del Kernel: rama 2.4.X Para todos aquellos que sigan usando esta rama del núcleo, que mantiene Marcelo Tasotti, también comentaré los pasos principales para una correcta compilación.
Los fuentes de este Kernel podemos bajarlo de cualquier mirror de la web principal, www.kernel.org y los pasos para descomprimir y mover son exactamente iguales que los descritos arriba para la rama 2.6.X.
Para acceder a las opciones del Kernel, en la rama 2.4.X tenemos exactamente las mismas formas que en la 2.6.X, es decir:
make config
make menuconfig
make xconfig
Tras guardar procedemos a compilar, estos pasos si son distintos a los anteriores y son los siguientes:
make dep
make bzImage
make modules
make modules_install
make install
Una vez todo esto haya concluido satisfactoriamente, solo nos quedará retocar el Lilo para decirle que tenemos un nuevo Kernel, añadimos lo siguiente en /etc/lilo.conf:
image=/boot/vmlinuz
label=kernel_2.4.21
read-only
Una vez guardamos y salimos ejecutamos /sbin/lilo (como root)
Ya tenemos nuestro Kernel listo para correr, reiniciamos y probamos.
Escrito por Manuel Aróstegui Ramírez Manssson
- Visto: 1142