Páginas

recompilação do kernel 2.6.33.3

 Bom, para terminar o assunto que aviva começado no artigo "Flagrantes da vida real no mundo linux", então estou postando aqui mais um artigo que trago de volta a vida. É o artigo da recompilação do kernel 2.6.33.

recompilação do kernel 2.6.33.3

 Coloquei as imagens anexadas mostrando o kernel no diretório /boot.

Note o kernel 2.6.26-2-686 e o kernel 2.6.33.3

 O Debian Leny vinha com o kernel 2.6.26-2-686 por padrão e eu passei a utilizar o kernel 2.6.33.3. A intenção aqui foi simplesmente desmistificar o que havia sido dito e tirar esse mito.

kernel 2.6.33.3 sendo utilizado, ao invés do tradicional 2.6.26

Como recompilar o kernel Linux

 As informações aqui são para o kernel 2.4 e 2.6, mas podem também ser bem aproveitadas da versão 3.x e 4.x do kernel.

 Primeiro, devemos configurar o kernel; para isso, existe quatro aplicativos que podem ser escolhidos. São eles:
$make config (esse é o configurador padrão do Linux, porém bem demorado devido ser totalmente em modo texto e procedural).
 Os próximos utilizam bibliotecas que geram uma interface amigável, facilitando a instalação.
$make menuconfig (utiliza a biblioteca NCurses)
$make gconfig (utiliza a biblioteca GTK)
$make xconfig (utiliza a biblioteca QT, a mesma da interface KDE).
 Um bom artigo para configurar o kernel está na em:
 Depois de configurado o kernel, você deve fazer o seguinte. Criar a imagem do kernel compactada com os seguintes comandos
 $make clean (para descartar os modulos que não serão compilados).
 $make dep (para gerar a arquitetura do kernel, no meu caso I686, já não é mais necessário fazer isso).
 $make bzImage ou $make zImage (a diferença é o bz é para o bzip2 e o z para gzip).

 compilar os módulos:
  $make modules 
 E instalá-los
 #make modules_install (lembrando que deve ser root para isso).
 Depois disso, digite
 #make install [também devendo ser administrador para essa operação) para que o sistema crie o system.map, o kernel com o nome de vmlinuz-x.y.z (sendo que x.y.z se refere a versão do kernel) e o config do kernel].
 Feito isso, dentro de /boot, digite
 #mkinitramfs -o initrd.img-x.y.z -v x.y.z para criar a imagem de disco ram (initrd) para o kernel. Ou a opção update-initramfs -c -k 2.6.33.3 -v que fará o mesmo.
 Um informação muito interessante que obtive foi que o comando "mkintrd" está defasado, sendo substituído pelo "mkinitramfs", por isso utilizado nessa postagem além de vir por padrão no Debian.
 Um observação que deve ser feita é que, se notarem, eu repeti o x.y.z. Funciona da seguinte maneira: quando vou gerar o initrd, além de indicar para qual kernel, tenho que indicar aonde ele vai buscar os módulos dentro de /lib/modules/. Por exemplo, como recompilei o 2.6.33 com os seus módulos dentro de "/lib/modulos/2.6.33", então tenho que gerar  o initrd.img-2.6.36 que irá buscar os módulos 2.6.33 (está gravado dentro do initrd que ele irá buscar automaticamente dentro de /lib/modules). Caso não passe esse parâmetro,por não ter sido indicado aonde buscar os módulos, você receberá uma mensagem como:
 "FATAL ERROR"  "MODULES NOT FOUNT"
  Por isso deve passar o segundo parâmetro igual. Esse segundo parâmetro é só uma indicativa de qual módulos utilizar.
 Para terminar, se você estiver utilizando o grub como carregador de boot padrão, utilize o comando
#update-grub que o sistema irá se encarregar de atualizar a lista de kernel dentro de /boot/grub/menu.lst (já no ubuntu 10.04 a história muda um pouco).
 Caso queiram me ajudar a escrever melhor este artigo sobre recompilação de kernel, fico feliz se puder receber essa contribuição, por que a intenção é realmente escrever o artigo que vai ajudar a todos com qualquer problema que apareça, até mesmo os novatos.
 O próximo artigo que pretendo escrever sobre o mesmo assunto é sobre o drive de DVD que estou tendo um pequeno problema.

 Creative Commons License

Nenhum comentário:

Postar um comentário

Viu algum erro e quer compartilhar seu conhecimento? então comente aí.

Observação: somente um membro deste blog pode postar um comentário.