Compilar e habilitar os módulos ip_table e iptable_nat no kernel 2.6.26 no Debian Linux

Caros amigos, após atualizar o meu kernel 2.6.18 para o 2.6.26, simplesmente não conseguia mais compartilhar a internet. Surgia o seguinte erro: "FATAL: Module ip_tables not found" no momento que carregaria o módulo iptable_nat.

[ Hits: 41.403 ]

Por: Francisco Claudionor Avelar Albuquerque em 17/11/2008


Instalando os pacotes necessários para copilar o kernel



Caros amigos, após atualizar o meu kernel 2.6.18 para o 2.6.26, resolvi compartilhar a internet, mas não conseguia mais subir os módulos ip_table e iptable_nat, simplesmente retornavam o erro:

FATAL: Module ip_tables not found

Depois de muitas noites em claro pesquisando na internet como habilitar o módulo nat no kernel 2.26 para assim compartilhar a NET, enfim encontrei a solução e quero muito compartilhar com vocês. Nesse artigo mostrarei como atualizar o kernel e habilitar os módulos necessários para carregar o ip_table e o iptable_nat. Então vamos ao trabalho.

Antes de começar precisamos de alguns pacotes básicos, essenciais para o processo: o kernel-package, gcc e libncourses5-dev. Sem eles não será possível a compilação. Para isto abra o terminal e use os seguintes comandos para baixá-los via apt-get dos repositórios da distribuição (lembrando sempre que linhas iniciadas em "#" são para comandos como root (administrador) e linhas iniciadas em "$" são para comandos como usuários):

# apt-get update
# apt-get install kernel-package
# apt-get install gcc
# apt-get install libncurses5-dev


Baixando o kernel

Baixando o kernel diretamente dos repositórios da sua distribuição via apt-get.

Primeiro temos que saber a versão do kernel atual, para isso utilize o comando:

uname -a

Com a versão na mão, utilizaremos o seguinte comando para pesquisar qual o kernel mais atualizado no nosso repositório:

# apt-cache search linux-source
linux-source
Esse comando vai mostrar as versões mais atuais do seu kernel, com isso usaremos o seguinte comando:

# apt-get install linux-source-2.6.xx

Obs.: Substituindo o "xx" com a versão que iremos atualizar. o apt-get coloca o arquivo na pasta /usr/src.

Baixe também o linux-headers e linux-kbuild:

# apt-get install linux-kbuild-2.6.xx
# apt-get install linux-headers-2.6.xx-etchnhalf.1-all-i386


É importante lembrar que a versão dos dois pacotes precisa ser a mesma que o source.

Baixando o kernel pelo kernel.org

Acesse a página: http://www.kernel.org/pub/linux/v2.6/
kernel.org
Nesta página você escolhe o kernel que mais lhe agrada, no meu caso escolhi o kernel linux-2.6.26.tar.bz2.

No terminal, como root, você utiliza o seguinte comando:

# wget -c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.26.tar.bz2

Obs.: Este comando deverá ser executado no diretório /usr/src, pois é o diretório base onde executaremos o processo do kernel.

    Próxima página

Páginas do artigo
   1. Instalando os pacotes necessários para copilar o kernel
   2. Compilando o kernel
   3. Levantando os módulos: ip_tables e iptables_nat
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Compilando Kernel 2.6.34 usando Debian Lenny

Sistema de arquivos EXT4 no OpenSuSE 11.1

Atualizando kernel de 2.4.31 para 2.6.13 no Slackware 10.2

Kernel 2.6.7 compilado e configurado para nVIDIA

Como compilar o kernel do Linux (testado e revisado)

  
Comentários
[1] Comentário enviado por removido em 17/11/2008 - 22:45h

É isso que me mata no debian... Ter de recompilar o kernel por causa de um simples módulo iptables.
Tenham a santa paciência!!!

[2] Comentário enviado por osmano807 em 18/11/2008 - 10:24h

Aqui em casa, só instaleio o pacote iptables que funcionou o module ip_tables.
Talvez ele queira que você já mude para ipv6, onde não existe nat, sei lá.

[3] Comentário enviado por agk em 08/12/2008 - 10:36h

Excelente artigo, mas tenho que discordar do que o amigo acsilva escreveu: "É isso que me mata no debian... Ter de recompilar o kernel por causa de um simples módulo iptables. Tenham a santa paciência!!!"

O Debian vem com iptables, nat, tudo funcionando perfeitamente, não tem que instalar e nem compilar nada, não fale o que não sabe, isso além de mostrar que não tem conhecimento do assunto, acaba por assustar usuários que buscam por informações sobre o Debian.

O que o nosso amigo fcavelar mostrou no seu artigo foi como habilitar esse módulo para utilizar com kernel 2.6.26, por padão o Debian Etch vem com kernel 2.6.18, se a versão mais nova do kernel não funciona por padrão isso não é problema do Debian, é problema do usuário saber configurar o kernel antes de sair compilando e instalando uma versão mais nova, pois o que vem por padrão com a distribuição funciona.

Muito bom o artigo, bem explicado, com certeza vai ajudar muita gente.

[4] Comentário enviado por firefiery em 18/11/2009 - 15:28h

Parabéns, me ajudou d+ esse artigo! :)

[5] Comentário enviado por manivelas_Brasil em 24/08/2010 - 01:14h

Excelente artigo. Fiz o passo a passo e deu tudo certo.Já estou compartilhando minha conexão da máquina virtual com a física. Agradeço ao amigo. Um abraço.

[6] Comentário enviado por juniorsaulo em 28/01/2013 - 10:24h

Olá amigo fcavelar, sou novo por aqui. Fui seguindo seu tutorial e estava tudo certo até o memento em que utilizei o comando make-kpkg -initrd kernel_image para criar o pacote. Parece que existe uma falha na sintaxe do comando. Pode me ajudar? Veja a saída do comando.

root@debian:/usr/src/linux# make-kpkg -initrd kernel_image
Unknown option: i
Unknown option: n
Unknown option: i
Unknown option: t
Unknown option: r
Unknown option: d
use --help to display command line syntax help.

[7] Comentário enviado por clovisvellardo em 23/10/2013 - 10:16h

Muito bom o post estou nesse exato momento tentando faze-lo
Sobre o comando make-kpkg -initrd kernel_image o correto é
make-kpkg --initrd kernel_image
É isso ai galera abraços...


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts