Compilar el kernel a lo tradicional
Existen varias razones para compilar un kernel. Por ejemplo puedes estar interesado en agregar un nuevo hardware o funcionalidad a tu computadora, o entonar tu sistema para tener un servicio o aplicación más confiable. Cualquiera que sea tu razón, aquí tienes las instrucciones para compilar el kernel de la forma tradicional.
Requisitos
Como vas a compilar un kernel, necesitarás algunos archivos y compiladores. También necesitarás ncurses para desplegar diálogos en una consola. En Debian puedes instalar todo esto escribiendo:
aptitude install build-essential libncurses5-dev
Directorio de trabajo
Es común usar el directorio /usr/src/ al momento de compilar el kernel, controladores y módulos. Entonces, entra a ese directorio:
cd /usr/src/
Procedimiento
Necesitarás las fuentes del kernel para compilarlo. Estas pueden obtenerse desde los repositorios de la distribución o desde kernel.org directamente. En Debian tendrás un archivo tar en el directorio /usr/src/ al instalar el siguiente paquete:
aptitude install linux-source-2.6.30
Si quieres descargarlas desde kernel.org sería algo como esto:
wget -c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.tar.bz2
Ahora descomprime el archivo tar:
tar xfjv linux-source-2.6.30.tar.bz2
De existir por compilaciones previas, borra el enlace linux:
rm linux
Ahora crea un enlace al directorio descomprimido. Si descargaste las fuentes desde Debian esto sería:
ln -s linux-source-2.6.30 linux
Si las descargaste desde kernel.org, debes escribir:
ln -s linux-source-2.6.30 linux
Entra al directorio linux:
cd linux
Si has compilado otros kernels es buena idea limpiar todo antes de comenzar a compilar el kernel nuevo:
make mrproper
Procede ahora a configurar las opciones de tu kernel. Para hacer esto, puedes usar make config (una interfaz interactiva pero algo molesta), make menuconfig (basada en mcurses). Yo sugiero usar la segunda opción:
make menuconfig
Verás una ventana similar a la mostrada arriba (la imagen principal del artículo). Desde ahí podrás seleccionar nuevas características para tu kernel, y decirle que las compile como módulo o como parte del kernel. Luego de que hayas seleccionado las opciones, escoge Exit para escribir el archivo .config.
En este punto ya has configurado tu kernel, para compilarlo escribe lo siguiente:
make
Este paso puede tardar mucho según las opciones que hayas escogido. Una vez que haya finalizado (y si no hubo errores) procede a instalar la imagen compilada y sus módulos:
make install
make module_install
Debes crear una pre-imagen, conocida como initramfs, para ayudar a tu kernel a cargar al momento de iniciar la máquina. Para crear esta pre-imagen para tu kernel escribe lo siguiente:
mkinitramfs -o /boot/initrd.img-2.6.30 2.6.30</pre>
Ahora edita grub (o cualquier bootloader que estés usando) para arrancar por el kernel compilado. Esto lo puedes hacer de forma manual, o si estás en Debian la orden update-grub lo hace por ti de forma automática:
update-grub
Finalmente, reinicia la computadora y selecciona tu kernel recién compilado.
Leave a Comment