Compilando Kernel no LinuxPostada em: 14/08/2004
Por: XeroxM Nº de Visualizações: 6760.
Lista de páginas desta publicação:
Kernel é a principal parte do Linux. Ele é a parte do sistema que sabe como é o seu computador, se ele tem, e qual o tipo, de rede, modem, drives, etc, e faz a gerência destes recursos entre os programas dos usuários.
Após você ter instalado o Linux, o sistema estará rodando com um kernel pré compilado pelos fornecedores da sua instalação (no caso Slackware). Como eles não sabem como é a sua maquina, o kernel é compilado de modo a ser o mais genérico possível e tenta englobar o maior número possível de configurações. Com isso, o kernel fornecido tem uma perda de performance, maior do que deveria e pode não aceitar todos os dispositivos que a sua máquina tenha.
Além deste motivo, você terá que compilar um novo kernel cada vez que você pegar uma nova versão
(ftp://sunsite.unc.edu/pub/Linux/kernel é um bom lugar para se procurar), seja por corrigir bugs, ou aceitar novas características.
Dica: Ao pegar uma nova versão de kernel, verifique a sua numeração. Ela pode ser 2.0.xx ou 2.1.xx, onde xx é a revisão. A diferença entre 2.0.xx e 2.1.xx é que a versão 2.0.xx é considerada estável, enquanto que as versões 2.1.xx são consideradas versões de desenvolvimento, o que significa que há grandes possibilidades de alguma instabilidade. Prefira as versões 2.0.xx a não ser que você já seja muito experiente (mas ai você não estaria lendo este texto).
Obs.: Para se poder compilar um kernel, você deve ter instalado o compilador C (GCC) , as bibliotecas C (libC), ter um espaço em disco suficiente (eu diria que uns 50Mb são mais que suficientes) e estar logado como root.
Adiante, será considerado que você já tenha lido os capítulos anteriores.
1) Descompactando os fontes.
Normalmente ao se instalar o Linux, teremos a seguinte configuração no diretório /usr/src que é o diretório onde por convenção são colocados os fontes de qualquer programa que você venha a compilar.
# cd /usr/src
# ls -l
total 1
lrwxrwxrwx 1 root root 13 Mar 6 04:52 linux -> linux-2.0.30/
drwxr-xr-x 15 1046 1046 1024 Mar 6 05:04 linux-2.0.30
Caso a versão do kernel que você vai compilar é a própria que já esta instalada (no caso 2.0.30), pule para o próximo item, se não ...
Delete o link simbólico com a seguinte instrução :
# rm linux
Descompacte a nova versão usando o comando tar (considerando-se que a nova versão seja a 2.0.33 e
que ela estaja no diretório /root/tgz):
# tar xzvf /root/tgz/linux-2.0.33.tgz
Renomeie o kernel, que foi descompactado dentro de um diretório chamado linux para algo mais
informativo :
# mv linux linux-2.0.33
Crie um link simbólico para ele com o nome linux :
# ln -s linux-2.0.33 linux
Opcionalmente, delete a versão antiga do kernel para liberar espaço:
# rm -rf linux-2.0.30