Compilando kernel 2.6 no Slackware 11

Saiba como compilar o kernel 2.6 no Slackware 11 do zero, deixando seu kernel com a sua cara.

[ Hits: 30.947 ]

Por: Adriano Barbosa em 24/01/2007


Configurando o Kernel



Recomendo que você baixe a configuração do kernel feita pela equipe do Slackware em algum mirror da distro, como esse do kernel 2.6.18 por exemplo:
Provavelmente você não encontrará uma conf da mesma versão do kernel que você está compilando, pra resolver isso basta pegar a conf da versão mais próxima da sua, mas que seja inferior a sua versão.

# cd /usr/src/linux
# make menuconfig


(abre o menu de configuração do kernel)

Agora vá até a opção "Load" e carregue o arquivo de configuração do kernel que você baixou. Após carregar a conf é só alterar os detalhes, infelizmente é tudo por sua conta, pois varia de PC pra PC. Caso você não saiba o que marcar ou desmarcar, recomendo não mexer em nada, pois a conf do Slackware provavelmente será suficiente. A única recomendação que eu faço é marcar o sistema de arquivos da sua partição como built-in, para isso basta acessar o menu "File systems" e marcar com um * a opção do sistema de arquivos da sua partição, por exemplo, se sua partição é ext3, você deve por um * na opção ext3, caso seja reiserfs, marque com * em reiserfs.

Ao sair no menu de configuração responda SIM para salvar o arquivo de configuração, pois essa resposta criará o arquivo /usr/src/linux/.config, que será usado futuramente na criação do initrd.

Agora já estamos prontos pra compilar o kernel.

Página anterior     Próxima página

Páginas do artigo
   1. Baixando o source e descompactando
   2. Configurando o Kernel
   3. Compilando o Kernel e configurando o boot
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Como explicar o que é kernel para um leigo

Deixe seu console mais bonito com Bootsplash

Compilando o kernel no Slackware com pacotes pré-compilados

Como Compilar Kernel Novo para o Sabayon Linux

Compilando um kernel Linux

  
Comentários
[1] Comentário enviado por coffnix em 24/01/2007 - 12:06h

na hora da compilação nem precisa de tudo isso cara....

# make modules && make modules_install && make bzImage

são suficientes. Agora, lembre-se q, caso vc queira recompilar um kernel mais novo no futuro basta usar o .config contido na pasta /usr/src/linux.

abração

[2] Comentário enviado por coffnix em 24/01/2007 - 12:08h

outra coisa q esqueci de citar.... no trecho ao qual vc cita do lilo.conf, o usuário só irá ter q usar initrd caso tenha compilado o suporte ao filesystem usado em /boot como módulo... caso tenha recompilado o kernel usando o filesystem como built-in não precisa criar initrd.

abração

[3] Comentário enviado por tenchi em 24/01/2007 - 14:48h

Eh, o chemonz está certo... O initrd não é obrigatório...
Outra coisa: Não é preciso remover o kernel anterior.
Basta adicionar uma nova entrada para o novo kernel no lilo.conf.
Tudo acontece sem conflito algum.

E também deixa o sistema usável com o kernel antigo, caso o novo não funcione.

Os kernel-headers também não são necessários, basta o source do kernel msm. Bem, eu nunca tive problemas com os headers.

Mas mesmo assim, sua intenção foi boa, e a dica não deixa de ser útil..

Falow.

[4] Comentário enviado por rdutra em 24/01/2007 - 16:53h

bom cara! vou levar com mais calma em casa.

mas eu faço só faço assim
-> copio o kernel pro /usr/src/
-> descompacto
-> linko pra ser o default
-> entro no diretorio
-> make menuconfig
-> marco o meu harware, embutido ou como modulo
-> salvo
-> make bzImage
-> make modules
-> make modules_install
-> copio o .config. o System-map e o bzImage pra /boot
-> vou no lilo, e altero a entrada.
-> fim

[5] Comentário enviado por ricardogrande13 em 25/01/2007 - 01:06h

galera....soou novo em linux e queria saber uma coisa........eu uso FC e queria instalar outro kernel......o FC tem pacotes de instalação RPM......esses RPM já faz todos esses passos que vocês passaram automaticamente ??? ele já vem compilado ??? é instalar e usar ou tem q fazer mais coisas ???

Obriado

[6] Comentário enviado por 4d4c47 em 25/01/2007 - 22:30h

comandos que uso pra compilar kernel 2.6.x

make menuconfig
make clean
make
make modules
make modules_install
mkinitrd -o /boot/initrd-2.6.x.img /lib/modules/2.6.x
cp /usr/src/linux/System.map /boot/System.map-2.6.x
cp /usr/src/linux/arch/i386/boot/bzImage /boot/2.6.x
vi lilo.conf
lilo

[7] Comentário enviado por hugoalvarez em 26/01/2007 - 12:32h

Mais um documento sobre compilação de kernel, sempre útil, mas eu entendo que deixar meu kernel com a minha cara é digitar antes de tudo dentro da pasta linux:

make mrproper

aí sim dar prosseguimento. Está pouco documentado e sem fotos e muitas opções padrão de qualquer kernel ficarão ativas se seguirmos passo a passo esse tutorial, esse tipo de material encontra-se aos montes na internet, não adicionou algo novo.

Flws

[8] Comentário enviado por GilsonDeElt em 26/02/2007 - 23:37h

Cara, gostei do artigo.
Minha dúvida é a seguinte:
Tenho os sources dos kerneis 2.6.17.13 e 2.6.18 que vieram nos CDs do Slack.
Preciso baixar mais alguma coisa antes de tentar compilar o kernel?

No mais, este artigo segue a filosofia do Slack: simples, direto e eficiente.
Assim que possível vou usá-lo para compilar um kernel 2.6 pro meu PC.
Parabéns! Continue assim!

[9] Comentário enviado por vinicius.almeida em 20/09/2007 - 19:16h

WARNING: arch/i386/kernel/built-in.o(.text+0xf35a): Section mismatch: reference to .init.data:trampoline_end (between 'setup_trampoline' and 'cpu_coregroup_map' )
WARNING: arch/i386/kernel/built-in.o(.text+0xf35f): Section mismatch: reference to .init.data:trampoline_data (between 'setup_trampoline' and 'cpu_coregroup_map ')
WARNING: arch/i386/kernel/built-in.o(.text+0xf36d): Section mismatch: reference to .init.data:trampoline_data (between 'setup_trampoline' and 'cpu_coregroup_map ')
WARNING: arch/i386/kernel/built-in.o(.exit.text+0x19): Section mismatch: referen ce to .init.text: (between 'cache_remove_dev' and 'powernowk8_exit')
WARNING: arch/i386/kernel/built-in.o(.data+0xfdc): Section mismatch: reference t o .init.text: (between 'thermal_throttle_cpu_notifier' and 'mce_work')
WARNING: kernel/built-in.o(.text+0x16942): Section mismatch: reference to .init. text: (between 'kthreadd' and 'init_waitqueue_head')

[10] Comentário enviado por vinicius.almeida em 20/09/2007 - 19:16h

esse erro o que pode ser?

[11] Comentário enviado por er0n em 13/12/2007 - 00:52h

o meu tb aparece erros na hora que digito make menuconfig ... olha que [*****]: (ele aparece umonte de warning antes)

make[2]: *** [scripts/kconfig/lxdialog/checklist.o] Error 1
make[1]: *** [menuconfig] Error 2
make: *** [menuconfig] Error 2

o que pode ser ? ta faltando alguma lib ou algo do tipo ?

[12] Comentário enviado por er0n em 13/12/2007 - 10:55h

esse meu erro eu ja arrumei tb ... é só instalar o pacote ncurses que tava faltando uaihiauah
lembrem-se de ter o pacot diffutils tb pois usa ele


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts