Personalizando e compilando o kernel
Chegamos à segunda etapa.
Nesse momento, você irá aprender a personalizar e compilar um kernel.
2. Assuntos desta segunda etapa:
- Resolvendo dependências;
- Criar o arquivo .config;
- Editando o nome da distribuição;
- Criando o bzImage.
2.1. Para iniciar, iremos rodar um comando rápido e verificar nossas dependências.
Primeiro, entre na pasta onde foi descompactado o kernel (no meu caso: /usr/src/linux-2.6.28):
# cd /usr/src/linux-2.6.28
Depois:
# make dep
Obs.: Caso você receba uma mensagem que não é necessário executar esta tarefa, está tudo OK.
2.2. Agora, iremos começar a personalizar de verdade nosso kernel, com o comando:
# make menuconfig
Com este comando, iremos entrar no modo de edição do kernel.
Aqui você irá ver todas as opções do kernel. Use as opções para navegar nos menus, adicione ou remova conforme desejado, porém, tome cuidado, pois toda modificação sem o conhecimento devido, pode causas erros.
É extremamente recomendável testar este método em uma máquina virtual, antes de por em prática no seu
GNU/Linux.
Navegação:
- [ENTER] - Entra num submenu
- [N] ou [ESPAÇO] - Desmarca a opção onde está o cursor
- [SETAS] - Navegação
Após terminadas as modificações desejadas, vá em: SAVE AN ALTERNATE CONFIGURATION FILE
E salve como:
.config
2.3. Coloque agora, o seu nome no kernel
Você pode editar o arquivo
Makefile para adicionar o seu nome a esta compilação do kernel.
# vim Makefile
Na linha: "EXTRAVERSION ="
Você pode acrescentar ".seunome" e a versão do kernel. Irá aparecer da seguinte forma (no meu exemplo): 2.6.28.luiz
2.4. Agora, precisamos criar a imagem do kernel.
Este processo pode levar algum tempo. Tudo depende do seu hardware:
# make bzImage
Obs.: Fique atento à sintaxe. No GNU/Linux, "bzImage" não é o mesmo que "bzimage".
Nessa fase, você aprendeu a personalizar um kernel e a criar a sua imagem.
Adiante, vamos criar os módulos.
Criando os módulos
Terceira etapa, vamos criar os módulos.
3.1. Esta etapa é provavelmente a mais demorada. Criar os módulos podem levar horas dependendo do seu equipamento.
Basta digitar o seguinte comando e aguardar:
# make modules
3.2. Agora, vamos à próxima etapa. Mais um comando simples, porém que pode levar um tempinho:
# make modules_install
3.3. Agora iremos copiar a imagem do kernel que criamos para o diretório
/boot:
# cp -p arch/x86/boot/bzImage /boot/vmlinuz-2.6.28.luiz
3.4. Na próxima etapa, precisamos criar o sistema
ramfs e atualizar o GRUB.
Precisamos criar o sistema ramfs para carregamento de módulos no boot, e fazemos isso com o seguintes comandos:
- Para entrar na pasta
/lib/modules:
# cd /lib/modules
-Para criar o sistema:
# mkinitramfs -o /boot/initrd.img-2.6.28.luiz 2.6.28.luiz
E enfim, rodar o update-grub:
# udpate-grub
Neste artigo, você aprendeu a personalizar um kernel.
Lembre-se que, toda modificação no kernel é perigosa.
Recomenda-se fazer backup antes de qualquer modificação, e testar este método em uma máquina virtual, caso você esteja inseguro.
Obrigado, e estou à disposição para dúvidas e sugestões.
Luiz Eduardo N. Casali
CCNA / LPIC
educasali[at]hotmail.com