Compilando o kernel do Slackware em 10 etapas

Salve galera linuxer, essa é a minha primeira contribuição para a comunidade, vamos ver aqui como é o processo de compilação ou recompilação do kernel. Bem pessoal, esse artigo é uma junção de vários outras técnicas que li na NET, onde peguei informações e as agreguei nesse passo a passo simples, direto e objetivo.

[ Hits: 65.999 ]

Por: Rafael Cristian Amarante Rocha em 13/02/2005


Obtendo os fontes do kernel



Esse teste foi feito utilizando o Slackware 10.0 com a versão do kernel 2.4.26, onde precisei habilitar no kernel um módulo de uma determinada placa de rede, mas pode ser utilizado, nos seguintes casos.
  • Atualizar a versão do kernel;
  • Habilitar módulos;
  • Após aplicar patches (nos casos que seja necessário a recompilação);
  • Depois de instalado o POM (Patch-O-Matic) do Iptables;
  • Ou em qualquer modificação onde seja preciso recompilar.

Certo, vamos ao que interessa primeiro. Vamos partir do princípio que vocês não tenham os fontes do kernel na máquina, pois bem, existem duas maneiras de obter estes fontes:
De posse dos fontes do kernel, se você pegou no CD da distro, é só instalar os fontes com o comando installpkg da seguinte forma:

# installpkg nome_do_pacote.tgz

Se você utilizou o SWARET, ele automaticamente baixa o pacote e instala, nos dois casos o pacote instalado vai para o diretório /usr/src/, dentro deste criando um diretório chamado "linux-(versão do kernel)" e um link simbólico chamado "linux". Um bom tutorial explicando como usar o SWARET vocês encontram em:
Já se você baixou no próprio site do kernel (kernel.org), vá para a pasta onde foi feito o download do arquivo e mova-o para a pasta /usr/src/, entre no diretório e use o comando abaixo para descompactar o pacote:

# tar -xvzf linux-2.4.26.tar.gz
ou
# tar -jxvf linux-2.4.26.tar.bz2

    Próxima página

Páginas do artigo
   1. Obtendo os fontes do kernel
   2. Preparando-se para o processo de compilação
   3. A compilação propriamente dita
   4. Configurando o lilo
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Kernel 2.6.7 compilado e configurado para nVIDIA

O Processo de Boot no Linux

Ksplice - atualizando o kernel sem necessidade de reboot

Kernel Hacking (RootKits)

Atualizando o Slackware 9.1 para o kernel 2.6.5

  
Comentários
[1] Comentário enviado por removido em 13/02/2005 - 09:44h

Muito bom, rafa!
Espero que sua contribuição seja com inúmeros artigos para ajudar bastante aos que vão iniciar no linux hoje e amanhã...
Faça um tutorial para cada dificuldade vencida por vc no uso do linux. Quando menos se pensa, aquele "pulo do gato" que vc deu pode ser útil para trocentas pessoas...
Um gde abraço,


10!!!!!!!!!!!!


[2] Comentário enviado por marujo em 13/02/2005 - 12:33h

Muito bom mesmo mas...
Só uma dica/duvida, no caso das linhas inseridas no lilo, não deveria ser:
image = /boot/bzImage
ao invés de:
image = /boot/vmlinuz?
A não ser que renomeie o arquivo que já tem do kernel anterior... no caso não é aconcelhado apagar ou renomerar pois se ouver problemas será possivel voltar e resouver, melhor copiar e da forma que tá e colocar no lilo tb igual como a copia..

[]

by M4ruj0-c3

[3] Comentário enviado por cvs em 13/02/2005 - 14:37h

oh... escrevi um artigo parecido, mas sobre o 2.6.10... ja tem uns 20 dias que ta esperando na fila e nada... hehehe :P legal o artigo.

[4] Comentário enviado por rafaelcristian em 13/02/2005 - 14:44h

Bom marujo,
o nome dado a imagem colocada no dir /boot "não importa muito" pois no lilo é onde vc vai dar o caminho com a flag image = , o caminha dado nesta flag tem que coincidir com a real... e é muito bem lebrando que é melhor adicionar, uma segunda chamada no lilo, pois caso ocorra algum erro vc poderar entrar pela outra chamada

[]´s
Rafael Cristian

[5] Comentário enviado por Ti_j@der em 13/02/2005 - 16:18h

Ok Rafa bom artigo parabéns.... ele vai ser muito util p os novos usários de Linux....
[]´s

[6] Comentário enviado por prediger em 16/02/2005 - 10:48h

Muito bom, papito! Vou testar assim que possível.

[7] Comentário enviado por jmcaladao em 17/02/2005 - 00:15h

e ai garoto,

Eu sabia que vc iria muito longe e sempre te disse isso, basto so vc acreditar....

calado

[8] Comentário enviado por hunz em 22/10/2006 - 08:38h

Realmente no lilo deve ser esta linha:
image = /boot/bzImage

no lugar desta:
image = /boot/vmlinuz


Abraço,
Paz e luz.

[9] Comentário enviado por dtux em 21/11/2006 - 11:23h

cara estou dando um "make bzImage", só q no final o seguinte erro e não cria a image "bzImage" no diretorio /usr/src/linux/arch/i386/. tod processo deu certinho sho paulo nisso. Pode me ajudar?????/O erro é
make [1]:***[usr/initramfs_data.cpio.gz]Error 1
make: *** Error2
q faço???????

[10] Comentário enviado por rafaelcristian em 21/11/2006 - 15:23h

opa fala ai diego, olha vc esta habilitando alguma coisa no kernel antes de compilar, vc adicionou algum patch ou habilitou alguma opção do kernel que entes não estava ativa ?

isso parece um erro especifico de alguma opção habilitada.

[11] Comentário enviado por removido em 04/04/2007 - 02:32h

Aí cara.
"10) Para finalizar a instalação do novo kernel, vamos ter que pegar a imagem gerada com comando "make bzImage", que fica no arquivo /usr/src/linux/arch/i386/bzImage e colocá-la dentro do diretório /boot. Depois disso vamos configurar o nosso lilo para poder fazermos a chamada do nosso kernel no boot, os passo serão descritos abaixo.

Passos para a copia do arquivo para o diretório /boot:

# cd /boot
# cp /usr/src/linux/arch/i386/bzImage ."

Essa parte não deu certo. Eu tive que entrar no /usr/src/linux/arch/i386 e entrar num outro diretório dentro dela (acho que era boot) e copiar o arquivo e mandar pro /boot.

Infelizmente, deu Kernel Panic :/

Abraço.

[12] Comentário enviado por removido em 16/05/2009 - 00:07h

Sim, Não importa se tem o boot dentro de i386
Ta o arquivo lah compilado


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts