5 Configure The Kernel

É uma boa idéia utilizar a configuração de seu kernel corrente como base para seu novo kernel. Contudo, copiamos a configuração existente para /usr/src/linux:

cp /boot/config-`uname -r` ./.config

Então, executamos

make menuconfig

que exibe o menu de configuração do kernel. Vá até Load an Alternate Configuration File e escolha .config (que contém a configuração de seu kernel corrente) para ser seu arquivo de configuração:

kernel_ubuntu2_1.png

kernel_ubuntu2_2.png

Então, navegue através do menu de configuração do kernel e faça as suas escolhas. Quando você terminar e selecionar Exit, responda à seguinte questão: (Do you wish to save your new kernel configuration?) com Yes:

kernel_ubuntu2_3.png


6 Contruir o kernel

Para construir o kernel, execute estes dois comandos:

make-kpkg clean
fakeroot make-kpkg –initrd –append-to-version=-custom kernel_image kernel_headers

Depois de –append-to-version= você pode escrever qualquer string que te auxilie a identificar o kernel, mas ela deve começar com um sinal de menos (-) e não deve conter espaço em branco.

Agora, seja paciente. A compilação do kernel pode demorar horas, dependendo da sua configuração do kernel e da velocidade do seu processador.


7 Instalação do novo kernel

Depois de construir, com sucesso, o kernel, você pode encontrar dois pacotes .deb no diretório /usr/src .

cd /usr/src
ls -l

No sistema de teste, eles eram linux-image-2.6.18.1-custom_2.6.18.1-custom-10.00.Custom_i386.deb (que contém o kernel atual) e o linux-headers-2.6.18.1-custom_2.6.18.1-custom-10.00.Custom_i386.deb (que contém arquivos necessários se você for compilar módulos de kernel adicionais logo depois). Instalarei-os assim:

dpkg -i linux-image-2.6.18.1-custom_2.6.18.1-custom-10.00.Custom_i386.deb
dpkg -i linux-headers-2.6.18.1-custom_2.6.18.1-custom-10.00.Custom_i386.deb

(Você pode transferir agora os dois arquivos .deb para outros sistemas Ubuntu e instalá-los exatamente do mesmo modo, o que significa que você não tem que compilar o kernel novamente.)

É isto. Você pode conferir o arquivo /boot/grub/menu.lst agora. Você deve encontrar duas instâncias do novo kernel lá:

vi /boot/grub/menu.lst

As instâncias que foram adicionados no sistema de teste foram estas:

title Ubuntu, kernel 2.6.18.1-custom
root (hd0,0)
kernel /boot/vmlinuz-2.6.18.1-custom root=/dev/sda1 ro quiet splash
initrd /boot/initrd.img-2.6.18.1-custom
savedefault
boot

title Ubuntu, kernel 2.6.18.1-custom (recovery mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18.1-custom root=/dev/sda1 ro single
initrd /boot/initrd.img-2.6.18.1-custom
boot

Agora , reinicialize o sistema:

shutdown -r now

Se tudo correr bem, o sistema deve se incializar com o novo kernel. Você pode conferir se ele está utilizando realmente o seu novo kernel com o comando

uname -r

Ele deve exibir algo assim:

2.6.18.1-custom

Se os sistema não iniciar, reiicialize-o e, quando você vir isto:

kernel_ubuntu2_4.png

pressione ESC para entrar no menu do GRUB:

kernel_ubuntu2_5.png

Selecione o seu kernel antigo e inicialize o sistema. Agora, você pode tentar recompilar o kernel. Não se esqueça de remover, do /boot/grub/menu.lst, as duas instâncias do kernel que não está funcionando.


8 Links

Ubuntu: http://www.ubuntu.com
The Linux Kernel Archives: http://www.kernel.org



Confira aqui!


Notebook J75 Dual Core 2GB 120GB DVDRW V.Basic - CCE + Mochila Targus
R$ 1.599,00
12X sem juros de R$ 133,25 no cartão
Notebook Dual Core T2310 2GB 160GB Linux SempToshiba + Roteador
R$ 1.999,00
12X sem juros de R$ 166,58 no cartão
Notebook Dual Core T2310 2GB 160GB DVDRW Linux - SempToshiba
R$ 1.899,00
12X sem juros de R$ 158,25 no cartão