[Fedora-users-br] Recompilar kernel

Rodrigo Padula de Oliveira rodrigopadula em sagraluzzatto.com.br
Qui Nov 17 15:05:26 UTC 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Leonardo Korndorfer wrote:
> Visto que tentei recompilar o kernel do fc4 e obtive alguns problemas
> inerentes talvez a distribuiçao gostaria de sabe quais comandos devem
> ser ultilizados...
> Dei um simples
> make menuconfig
> make && make modules_install
> ...e digamos assim: "nada eras".

Siga os passos deste tutorial, eu tinha ele gravado aqui em um txt, não
sei quem é o autor!


################################
       Compilando o Kernel
################################

Antes de tudo, verifique se você tem os Pacotes de Desenvolvimento do
Fedora*(1). Para isso, execute o comando system-config-packages, na
parte de Desenvolvimento (Development), se a opção Ferramentas de
Desenvolvimento (Develoment Tools) estiver marcada, deixe marcada, se
não estiver, marque-a, sem esse pacote, não será possível compilar o
kernel, pois aí contém os compiladores.

Feito isso, está tudo pronto para podermos começar.


Passo 1:

- - Baixe o source do Kernel aqui
http://download.fedora.redhat.com/pub/fedora/linux/core/development/SRPMS/kernel-2.6.10-1.1075_FC4.src.rpm


Passo 2:

- - Instale o source do Kernel com o comando rpm -ivh
kernel-2.6.10-1.1075_FC4.src.rpm. Ele instalará e copiará seus arquivos
para /usr/src/redhat/SOURCES.


Passo 3:

- - Entre em /usr/src/redhat/sources com o comando cd
/usr/src/redhat/SOURCES.


Passo 4:

- - Copie o arquivo linux-2.6.10.tar.bz2 para /usr/src com o comando cp
linux-2.6.9.tar.bz2 /usr/src.


Passo 5:

- - Entre no diretório /usr/src com o comando cd /usr/src.


Passo 6:

- - Extraia o arquivo linux-2.6.10.tar.bz2 com o comando tar xvjf
linux-2.6.10.


Bem, até aqui, tudo o que você fez foi copiar o source do Kernel para
seu devido lugar para poder extraí-lo e iniciar o processo de compilação.


Passo 7:

- - Vamos configurar o Kernel. Nesta parte, você deve saber o que quer
habilitar/desabilitar, para isso execute um dos comandos abaixo:

[1] - make gconfig
[2] - make xconfig
[3] - make menuconfig

Vou explicar cada um deles.


O "make gconfig" é uma ferramenta de configuração gráfica do kernel que
você está prestes a compilar, ele é feito em GTK, se você usa Gnome,
seria melhor executar o "make gconfig", pois você não precisaria de mais
nenhuma biblioteca adicional.

O "make xconfig" é outra ferramenta de configuração gráfica do kernel
que você está prestes a compilar, ele é feito em QT, se você usa KDE,
seria melhor executar o "make xconfig", pois você não precisaria de mais
nenhuma biblioteca adicional.

O "make menuconfig" é outra ferramenta de configuração do kernel, porém
não é gráfica, ela roda no próprio terminal, se você não usa nenhum dos
dois Gerenciadores de Janela, e melhor executar o "make menuconfig".

As três opções servem para a mesma coisa, ou seja, tem o mesmo fim,
apenas são ferramentas que usam bibliotecas diferentes. :)

Existem mais opções, mas as mais comuns e usadas são essas, para mais
informações digite make help.


Após executar um dos comandos acima, você deve fazer a respectiva
configuração do kernel, o que ativar, o que não ativar, o que habilitar,
etc, etc e etc.

Após ter feito isso, *salve a configuração* e saia. Importante, lembre
sempre de salvar a configuração antes de sair, pois senão a compilação
do kernel nao vai servir pra nada.


Passo 8:

- - Chegou a hora de preparar a imagem que o kernel irá procurar quando
for dar o boot, faça isso com o comando make bzImage.

Irá demorar um tempo.

Se acabar tudo bem, podemos passar para o próximo passo, se não der, ou
se der algum erro, verifique se você tem os Pacotes de Desenvolvimento
instalados no Fedora*(1).


Passo 9:

- - Agora é a parte que mais demora, é onde ele irá compilar todos os
módulos existentes no kernel todo. Para fazer isso, execute o comando
make modules. Arrume alguma coisa muito legal para fazer, pois demora um
tempo significativo para fazer toda a compilação dos módulos, eu
aconselharia jogar algo como Carmen Sandiego no xdosemu :-D


Passo 10:

- - Após ter acabado de compilar os módulos, devemos instalá-los, com o
comando make modules_install. Não irá demorar muito.


Passo 11:

- - Após ter feito tudo isso, seu kernel está compilado, para acabar de
configurá-lo, execute o comando make install. Esse comando, pelo que eu
li em algum lugar que eu não me lembro, ele foi implantado recentemente
no kernel, poupando *muito* esforço na hora de recompilar. Se esse
comando não existisse, teríamos pelo menos mais três passos pela frente,
como a cópia dos arquivos bootáveis, configuração do Boot Loader,
criação da imagem, etc, etc, etc... :-D


Se você conseguiu, parabéns, tentei simplificar o máximo que pude para
usuários que estão chegando agora :)

Se você não conseguiu, tente outras vezes, até você conseguir, pois
errando que se aprende, eu bati *muito* a cabeça com isso no começo,
agora facilitou um pouquinho mais :)

PS1.: Não funciona em versões mais obsoletas do kernel, pois como dito
acima, o comando make install foi implantado recentemente.

PS2.: Esta compilação foi testada 2 vezes por mim no Fedora Core 3, mas
acho que deve funcionar em outras distribuições.

PS3.: Qualquer dúvida, entrem em contato que se eu souber, irei ajudá-lo
com o maior prazer. Very Happy


É isso...


###########################################################
Outras opções - Modo Mais Simplificado - Sem as Explicações
###########################################################


[1] - baixe o source do kernel
[2] - tar xvjf linux-x.y.z em /usr/src
[3] - cd /usr/src/linux-2.6.10
[4] - make gconfig
[5] - make
[6] - make modules_install
[7] - make install


PS1.: O comando "make" cria o "bzImage" e faz o "make modules",
substitui dois comandos em um.
PS2.: Para instalar o source do kernel apartir do src.rpm, leia o
tutorial acima.

- --
+================================================+
            RODRIGO PADULA DE OLIVEIRA
  (o-   BACHAREL EM SISTEMAS DE INFORMAÇÃO
  //\   FACULDADE METODISTA GRANBERY - FMG
  V_/_
             PostgreSQL - PHP - Linux
+================================================+

         Membro Fundador do Gunix Linux
     	    http://www.gunix.com.br

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iD8DBQFDfJw28arYxsJpZ0URAnKXAKDqffEaXW5n/R7zhBqwxCpKVDO4RACffOy1
r7embazz44oila9HJyhpx3g=
=ruyo
-----END PGP SIGNATURE-----




Mais detalhes sobre a lista de discussão Fedora-users-br