Herramientas Personales
Usted está aquí: Inicio Artículos Compilación del kernel en GNU/Linux Debian

Compilación del kernel en GNU/Linux Debian

por FrangaL Última modificación 17/04/2008 14:15

El artículo se divide en dos partes, una para la compilación y instalación del kernels 2.4 y 2.6.



Los pasos están orientados a la compilación del kernel bajo Debian, aunque es fácilmente aplicable a cualquier otra distribución.

Espero que quede suficientemente claro, sino hacédmelo saber.

Kernel 2.4.x en Debian


Primero necesitamos descargar el source del kernel, lo descargamos con wget, lo instalaremos con apt.

apt-get update
apt-get install wget
cd /usr/src
wget www.kernel.org/pub/linux/kernel/v2.4/linux-2.4.28.tar.bz2


Descomprimimos los sources.

apt-get install bzip2
tar jxvf linux-2.4.28.tar.bz2


Creamos un link simbólico.

ln -s linux-2.4.28 linux


OPCIONAL: Parchear el kernel con soporte encriptación MPPE 128bit y compresión MPPC VPN Server

wget -c http://www.polbox.com/h/hs001/linux-2.4.28-mppe-mppc-1.2.patch.gz
cd linux
apt-get install patch
zcat ../linux-2.4.28-mppe-mppc-1.2.patch.gz | patch -p1


Configuramos el kernel para adaptarlo a nuestro hardware.

apt-get install libncurses5-dev make gcc
make clean mrproper
make menuconfig


Una vez configurado el kernel , compilamos la imagen del kernel Linux y los módulos.

make dep
make bzImage
make modules


Instalamos los módulos, copiamos la imagen del kernel al /boot.

make modules_install
cp arch/i386/boot/bzImage /boot/2.4.28.img


Creamos la imagen del initrd.

apt-get install mkinitrd-tools
mkinitrd -o /boot/initrd.2.4.28.img /lib/modules/2.4.28


Opción A: Gestor de arranque Lilo

Editamos el lilo.conf y añadimos la nueva imagen de nuestro kernel.

nano -w /etc/lilo.conf

image=/boot/2.4.28.img
label=2.4.28
read-only
initrd=/boot/initrd.2.4.28.img



Cargamos la nueva configuración del lilo.

lilo -v


Opción B: Gestor de arranque Grub

Editamos el archivo de configuración del grub y añadimos la nueva imagen de nuestro kernel.

nano -w /boot/grub/menu.lst


title Debian GNU/Linux, kernel 2.4.28
root (hd0,1)
kernel /boot/2.4.28.img root=/dev/hda1 ro
initrd /boot/initrd.2.4.28.img
savedefault
boot




Kernel 2.6.x en Debian.


Primero necesitamos descargar el source del kernel, lo descargamos con wget, lo instalaremos con apt.

apt-get update
apt-get install wget
cd /usr/src
wget www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.11.11.tar.bz2


Descomprimimos los sources.

apt-get install bzip2
tar jxvf linux-2.6.11.11.tar.bz2


Creamos un link simbólico.

ln -s linux-2.6.11.11 linux


OPCIONAL: Parchear el kernel con soporte encriptación MPPE 128bit y compresión MPPC VPN Server


wget -c http://www.polbox.com/h/hs001/linux-2.6.11-mppe-mppc-1.3.patch.gz
cd linux
apt-get install patch
zcat ../linux-2.6.11-mppe-mppc-1.3.patch.gz | patch -p1


Configuramos el kernel para adaptarlo a nuestro hardware.

apt-get install libncurses5-dev make gcc
make clean mrproper
make menuconfig


Una vez configurado el kernel , compilamos la imagen del kernel Linux y los módulos.

make bzImage
make modules


Instalamos los módulos, copiamos la imagen del kernel al /boot.

make modules_install
cp arch/i386/boot/bzImage /boot/2.6.11.img


Creamos la imagen del initrd.

apt-get install mkinitrd-tools
mkinitrd -o /boot/initrd.2.6.11.img /lib/modules/2.6.11



Opción A: Gestor de arranque Lilo

Editamos el lilo.conf

nano -w /etc/lilo.conf

image=/boot/2.6.11.img
label=2.4.20
read-only
initrd=/boot/initrd.2.6.11.img



Cargamos la nueva configuración del lilo.

lilo -v


Opción B: Gestor de arranque Grub

Editamos el archivo de configuración del grub y añadimos la nueva imagen de nuestro kernel.

nano -w /boot/grub/menu.lst


title Debian GNU/Linux, kernel 2.6.11
root (hd0,1)
kernel /boot/2.6.11.img root=/dev/hda1 ro
initrd /boot/initrd.2.6.11.img
savedefault
boot



Ahora solo queda saber si el nucleo funciona correctamente, en caso de fallo revisar la configuración del kernel.

Si hay algún problema con estos pasos o no os compila bien y no sabéis por qué, podeis dejar un comentario con vuestras preguntas.

Acciones de Documento

    Todos los contenidos que hay en esta web están bajo la protección, términos y condiciones de la licencia Creative Commons License