Cómo compilar un kernel para principiantes


Después de haber estudiado varios tutoriales acerca de como compilar el kernel decidí contribuir con mi granito de arena y escribir un tutorial bien detallado paso por paso y también contare mi experiencia al respecto.

Tengo una laptop HP Pavillion AMD Turion de 64 Bits y acabo de compilar un kernel 2.6.26, explicare todo el proceso de como lo hice en 10 pasos con unas breves descripciones y notas de cada una ya que es muy importante que se sepa que es lo que busca cada paso:

1). OBTENER LAS FUENTES.

Primero que nada tenemos que bajar los archivos necesarios para compilar el kernel, estos archivos son los controladores y módulos que utiliza el Sistema Operativo para administrar el hardware. Estos archivos lo podemos bajar de la pagina Oficial http://www.kernel.org/ (en ingles). En la pantalla que nos aparece buscamos la ultima versión estable (The latest stable version of the Linux kernel) y descargamos toda la fuente (Full Sources) dándole clic a la “F”

2). DESCOMPRIMIR LAS FUENTES.

Para el segundo paso ya deberíamos tener en una carpeta X un archivo llamado linux-2.6.xx.tar.bz2 con un tamaño de 47 MB (mas o menos). Abrimos la consola o una terminal y nos ubicamos en la carpeta donde bajamos las fuentes y ejecutamos el siguiente comando para descomprimir el archivo:

$ tar -jxvf  linux-2.6.xx.tar.bz2

3). BUSCAR EL ARCHIVO “config-2.6.XX.Y- ” EN /boot.

Para no empezar la configuración del nuevo kernel desde 0, nos vamos a basar en la configuración del kernel que se está usando en estos momentos, este archivo se encuentra en /boot. Dependiendo de que tan actualizada este tu distro puede que tengas más de un archivo config, el que nos interesa es el más actualizado y parte del sufijo puede variar de distro a ditro, en mi caso se llamaba  “config-2.6.24.5-laptop-2mnb” lo importante es que empiece con  “config-2.6″. Luego que hayamos encontrado este archivo lo copiamos en la carpeta que se creo después de descomprimir el archivo que nos bajamos de la Web, esta carpeta se debería llamar “linux-2.6.xx”.

4). VERIFICAR SI TIENES LOS PROGRAMAS NECESARIOS.

Antes de empezar con la instalación debemos cerciorarnos que tengamos los siguientes programas instalados en nuestro sistema:

1. make (a GNU tool which simplifies the build process for users) {Una herramienta GNU que simplifica la construcción de procesos por el usuario}
2. gcc (GNU Complier Collection) {Compilador GNU}
3. gcc – C++ (C++ support for gcc) {Soporte C++ para gcc}
4. lib64qt3-devel (Qt3 – Files needed to build Qt3 based applications)** {Qt3 Archivos necesarios para construir aplicaciones basadas en Qt3}

Puede que ya tengas algunos de estos programas instalados y los que no tienes los puedes instalar por medio de tu administrador de paqueterias.

NOTA:  ** este es el nombre del archivo para la arquitectura x86_64 si utilizas una computadora de 32 Bits tendrías que averiguar cual es su equivalente.


5). CONFIGURAR EL NUEVO KERNEL.

Una vez que hayamos verificados que tenemos los programas nos vamos para la carpeta con las fuentes ../linux-2.6.xx, y ejecutamos el siguiente comando:

$ make xconfig

Esto debería abrir una ventana con opciones para cargar los módulos del nuevo Kernel, si da un error lo mas probable es que falte un programa de la lista que mencione anteriormente.

En la pantalla que se ve están las opciones ya activadas que esta usando el kernel actual más las nuevas opciones que vienen con el nuevo kernel que están sin activar. Este paso es el MAS IMPORTANTE de todo el proceso de compilación del nuevo kernel así que tomate todo el tiempo necesario para leer cada una de las opciones y determinar si las activas o no.

La ventana está dividida en 3 secciones la primera y la más grande salen las opciones generales, en la segunda aparecen las opciones especificas y la tercera sección una breve descripción de la opción seleccionada.

Hay dos formas para activar una opción, la primera es cargarla dentro del kernel cuando arranque, la forma de activarla es haciendo clic en el cuadrito y aparecerá un visto bueno (o check mark) y la otra forma de cargarla es afuera del kernel como módulo que se hará disponible cuando se necesite dicha opción, la forma de activarla es presionando la letra M y aparecerá un punto en el cudrito. Cargar una opción dentro del kernel o como módulo tiene ventajas y desventajas y hay opciones que sólo se pueden cargar dentro del kernel o sólo pueden ser cargada como módulos. Seria recomendable que te informaras más sobre este punto en la Web para que tengas más bases a la hora de decidir como cargarlas.

Hay opciones que te sugieren que hacer si dudas sobre esa opción (no cargarla, cargarla o cargarla como módulo)

La idea de este paso es seleccionar el mayor numero de opciones que aplique a tu sistema y Des seleccionar las que no apliquen, es como vestir a alguien a la medida, todos podemos comprar ropa en la tienda pero nos puede quedar grande o pequeña pero que sólo nos quedara perfecto cuando la compramos a la medida. Entre menos módulos se carguen más rápido va a iniciar el kernel. En la carpeta ../linux-2.6.xx/Documentation hay mucha más información de la breve descripción que aparece en pantalla, lamentablemente esta información también esta en ingles.

Cuando terminen guarden los cambios y cierren la ventana

Lo bueno de este paso es que se puede hacer en varias tandas o rondas, lo que tienes que hacer es guardar los cambios que hagas en esa oportunidad y cerrar la ventana, y para abrirla de nuevo te colocas otra vez en la carpeta  ../linux-2.6.xx y escribes:

$ make xconfig

6). COMPILAR EL KERNEL.

En la consola ejecutamos el siguiente comando para compilar el nuevo kernel:

$ make

Este paso utilizara la configuración del paso anterior para crear el nuevo kernel, aquí te puedes ir a tomar un café o ir a ver TV, en mi computadora compile el kernel y se tardo 50 minutos.

7). INSTALAR LOS MÓDULOS.

Ejecutamos:

# make modules_install

En este paso se instalaran en el sistema los módulos que hayamos seleccionado del paso 5

8). INSTALAR EL NUEVO KERNEL.

Ejecutamos:

$ make install

Esta opción hay que hacerla como root. Con ese comando se instalara el kernel en el sistema y se configurara el GRUB o el LILO apareciendo la opción de iniciar con el nuevo kernel la próxima vez que se inicia el sistema.

9). REINICIAR Y PROBAR EL NUEVO KERNEL.

Si el nuevo kernel no funciona se vuelve a reiniciar y se escoge el kernel que ya estaba instalado.

10). BORRAR LA CARPETA QUE SE ACABA DE CREAR (OPCIONAL).


Comparte este documento:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • BarraPunto
  • BlinkList
  • blogmarks
  • Furl
  • Live
  • Meneame
  • Technorati
  • YahooMyWeb


5 Respuestas para “Cómo compilar un kernel para principiantes”

  1. por fin una guia que explica las cosas claras, tengo claro que no me saldrá a la primera, pero hasta leer estas lineas no sabia ni por donde empezar.

    muchas gracias

  2. Excelente guía. Yo tampoco tenía la más mínima idea de como hacer esto ni por donde comenzar. Gracias!!!

  3. Felicidades, una guia muy bien explicada de como compilar un kernel.

  4. Gracias, finalmente alguien que si explica bien.

  5. Muy bien explicadito…. de una forma muy pedagógica ……

Publica un comentario

Puedes usar estas etiquetas XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <blockquote cite=""> <code> <em> <strong>