Aqui vai um resumo dos passos para se compilar o Kernel.
Baixe os fontes do kernel em
www.kernel.org.
Feito isso copiamos o arquivo para /usr/src:
# cp linux-versãodokernel.tar.gz /usr/src
# cd /usr/src
Descompactamos os fontes:
# tar -zvxf linux-versaodokernel.tar.gz
Agora apontaremos um link simbólico para o diretório recém criado:
# ln -s /usr/src/linux-versaodokernel linux
Entramos no diretório:
# cd /usr/src/linux
Verificamos se nenhum módulo ou dependência desnecessária será utilizada:
# make mrproper
Configuramos as opções do Kernel:
# make config (em modo texto)
ou
# make menuconfig (uma interface elegante para a customização)
ou
# make xconfig (com interface gráfica)
Depois de configurarmos, se compilarmos uma versão inferior a 2.6 criaremos as dependências:
# make dep
Limpa as compilações anteriores para que o novo kernel seja limpo:
# make clean
Compile e crie o Kernel:
# make bzImage
Copiamos a imagem para o diretório onde será lido no momento do boot:
# cp /usr/src/linux/arch/i386/boot/bzimage /boot/vmlinuz-versao
Editamos o arquivo de configuração gerenciador de boot e acrescente a nova imagem:
Lilo:
# vi /etc/lilo.conf
Grub:
# vi /boot/grub/menu.list
Se você utilizar o lilo precisará rodar o comando lilo depois de alterar sua configuração para que elas tenham efeito:
# lilo
Reinicie e aproveite seu Kernel.
Té mais...
Sinto falta de uma forma do kernel autodetectar meu hardware antes da compilação, me poupando de compilar módulos desnecessários. Já existiu tal iniciativa, mas foi descontinuada (e só rodava em 2.5). Se alguém souber dizer de outra alternativa, eu agradeço.