Como compilar o kernel do Linux (testado e revisado)

Esse artigo vai afastar o medo que usuários tem do Kernel Panic. Tentei explicar de modo didático como como ter um resultado desejado por todos. No decorrer da semana testei vários artigos do Viva o Linux e este texto retrata minha conclusão.

[ Hits: 74.891 ]

Por: Marcelo Gonçalves em 15/11/2008


Configurando o GRUB



Vamos configurar o GRUB.

Ainda logado como root digite:

# cd /boot/grub

# vim menu.lst
ou
# vi menu.lst

Coloque:

title           Debian GNU/Linux, kernel 2.6.24-6-686
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.24-i386-1 root=/dev/hda1 ro
initrd          /boot/initrd-2.6.24-i386-1.img
savedefault

Salve o arquivo, reinicie a máquina e escolha o modo com o novo kernel...

Para confirmar sua façanha digite no terminal:

# uname -a

Você está na lista dos nerds attack by linuxman ^^ HuHiHiuHuihIUhiuuhi

Caso dê erro vai parecer:
Linux: kernel panic
Qualquer coisa lembre-se do guia do mochileiro das galáxias:

DON'T PANIC

Quem usa o LILO pode me contactar depois...

Página anterior    

Páginas do artigo
   1. Porque compilar o kernel
   2. Compilando o kernel
   3. Configurando o GRUB
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Compilando Kernel 2.6.34 usando Debian Lenny

Compilação de Kernel baseado na versão 2.6 para o LTSP 4.2

Como compilar o Kernel em qualquer distribuição GNU/Linux

Linux (kernel) - A história do seu criador

Compilando o kernel do Slackware em 10 etapas

  
Comentários
[1] Comentário enviado por oliviofarias em 16/11/2008 - 01:08h

Bem amigo, nunca meti a cara pra aprender na unha a compilar um kernel.
Sempre li artigos e tutorias, só que nenhum me agradou e achei de forma (para usuários iniciantes) fácil de entende.
Já o seu está bem resumido e de fácil entendimento.
Este artigo está salvo para Domingo ter meu primeiro "Figth" com a compilação de um kernel.
Parabéns pelo artigo :c)

[2] Comentário enviado por marcelovegano em 16/11/2008 - 12:43h

[b]ERRATA [/b]

# tar xjvf linux-2,6,24.tar.bz2 /usr/src
# ls -sf /usr/src/linux-2,6,24 /usr/src/linux

O certo é trocar as vírgulas pelos pontos:


# tar xjvf linux-2.6.24.tar.bz2 /usr/src
# ls -sf /usr/src/linux-2.6.24 /usr/src/linux

[3] Comentário enviado por nicolo em 16/11/2008 - 16:43h

Muito bom, é o mesmo dos debians, já usei com sucesso em slackware 12, funciona. A grande dica é baixar o initrd-tools, sem o que a coisa não se completa. Precisa avisar os iniciantes que:
(i) os pacotes de compilação tem que estar instalados;
(ii) Depois de compilado, os módulos do kernel velho que foram compilados na instalaçao de programas, inclusive módulo de placa de vídeo, precisam ser recompilados, ou seja: precisa reinstalar esses pacotes.

Poderia indicar para começar com o config velho no make menuconfig e alterar só o que for necessário. Configurar do zero é para "majorgeeks". Claro que pode-se obter um resultado otimizado, mas o risco aumenta consideravelmente.
Parabéns.

[4] Comentário enviado por removido em 16/11/2008 - 18:20h

pessoalmente gostei !!!!!!!

[5] Comentário enviado por thiagofanfoni em 17/11/2008 - 09:15h

Realmente ficou muito legal, eu queria ter isso uns 2 anos atrás.
Só para deixar um pouco mais completo, são coisas que eu apanhei para descobrir:
Se você for recompilar um kernel para uma máquina que não usa LVM ou RAID, você não precisará do initrd , des de que a controladora de disco e o sistema de arquivos utilizado estejam marcados como built-in ( * ).
Se você tiver mais de uma placa de som, é legal marcar as 2 como módulo ( M ) , assim você conseguirá utilizar o alsaconf (do pacote alsa-utils).
Na parte de video é sempre legal marcar os módulos VESA e VGA.
Tem uma opção que eu não lembro onde fica (acho que em general) que é para acessar o arquivo de configuração do kernel que está rodando através do /proc , assim se você der um make mrproper você poderá recuperar o arquivo de configuração atraves do comanto zcat /proc/config.gz > /usr/src/linux/.config

[6] Comentário enviado por JotaCapa em 17/11/2008 - 12:17h

Gostava de colocar uma questão.

Após fazer o upgrade do Ubuntu do 8.04 para o 8.10 fiquei sem a possibilidade de gravar CD/DVD's. A questão que coloco, é será que esse procedimento dá para fazer a recompilação do Kernel de acordo com a minha máquina, e dessa forma o sistema passar a gravar CD/DVD's?

[email protected]

[7] Comentário enviado por brunaocomanda em 17/11/2008 - 15:29h

Bom artigo. A partir da série 2.6 do kernel, o "make bzImage" e "make modules" pode ser substituído apenas pelo "make". Este já faz os dois passos.

[8] Comentário enviado por marcelovegano em 28/02/2009 - 10:03h

o pacote initrd agora é o initramfs-tools

[9] Comentário enviado por alexandreromeu em 25/04/2009 - 03:41h

Bom dia!

Parabéns pelo artigo!

Depois de vários KernelS PanicS, dessa vez consegui compilar um kernel :)
Compilei a versão 2.6.28.
Ela tem suporte à wireless Realtek 8187B (notebook intelbras e alguns positivo).

Editado: Compilei no Debian Stable (5.01).

Algumas observações:

-Na correção da errata faltou trocar o "ls" por "ln" para fazer o link.
-Como vc disse, os pacotes "initrd" mudaram de nome, no meu caso, foi:
"linux-initramfs-tool" e "initramfs-tools"

Também precisei instalar o "make" e o "g++"
aptitude install make
aptitude install g++

Foi só seguir os passos, e quando reiniciei, pela primeira vez depois de tentar compilar não vi o "kernel panic" hahaha
Agora é só alegria.

Mais uma vez, parabéns pelo artigo e muito obrigado. Ajudou muito!

Alexandre Romeu

[10] Comentário enviado por len0n_16 em 05/02/2011 - 01:30h

os pacotes linux-initramfs-tool e initramfs-tools já vem instalados no debian stable 5.08 ? eu precisarei instalar primeiro o dash e o cramfsprogs? sou iniciante :) obrigado

[11] Comentário enviado por marcelovegano em 12/02/2011 - 14:51h

Caro amigo,

Eu sempre tive que instalar esses pacotes pelo apt-get , qualquer dúvida de compilação pode enviar um e-mail para [email protected]

Att.,

Marcelo Gonçalves

[12] Comentário enviado por marcelovegano em 12/02/2011 - 14:53h

ERRATA

ln -sf /usr/src/linux-2.6.24 /usr/src/linux


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts