Ataulizando o Kernel Corretamente

Publicado por Wainer Chiari 06/04/2006

[ Hits: 5.451 ]

Download atualizakernel.txt




Como atualizar seu kernel Corretamente, Incluse os headers.

  



Esconder código-fonte

Atualizando o Kernel do Linux Corretamente

Colaboração: Herbert G. Fischer >

Muitas pessoas acham que basta baixar o source
de um novo kernel, configurar, compilar, instalar e pronto.
Existem alguns headers em C que são usados pra compilar
o próprio kernel, mas que são referenciados pelo diretório
/usr/include. Em muitas distribuições, esses headers são
copiados de algum kernel ao invés de serem links para
o kernel atual (/usr/src/linux).

Segue abaixo os passos a serem dados:




Baixar o source do kernel novo e descompactar o source no
/usr/src/linux-x.xx.xx, respeitando
a versão.


Criar um link de /usr/src/linux-x.xx.xx para /usr/src/linux. Se
o link já existir para alguma versão velha, apague ele e crie novamente



Verifique se os diretórios /usr/include/linux e /usr/include/asm são
links para /usr/src/linux/include/linux e /usr/src/linux/include/asm-XXXX
(onde XXXX é a plataforma do computador; ex: i386), respectivamente.
Se não forem, apague os diretórios (não esqueça do backup) e crie os links.
Esse detalhe é muito importante e não é respeitado em muitas distribuições.


Configure o kernel com make menuconfig ou make xconfig. Se você já
tinha um kernel anterior configurado, copie o arquivo .config dele para o
diretório do novo kernel.


Rode, make depend, make bzlilo (ou bzImage), make modules, make
modules_install... Não vou entrar em detalhes nesta parte porque a maioria
já sabe fazer isso.


Copie o System.map que ele gerou no /lib/modules/x.xx.xx do novo kernel.
Esse é o melhor lugar para o System.map ficar, ainda mais se você estiver
experimentando vários kernels no mesmo computador.


Basicamente é isso. Segue abaixo um dump prático como exemplo de
organização:


ls -l /boot
total 2004
-rw-r--r-- 1 root root 7988 Mar 9 05:41 boot-bmp.b
-rw-r--r-- 1 root root 7964 Mar 9 05:41 boot-menu.b
-rw-r--r-- 1 root root 6204 Mar 9 05:41 boot-text.b
-rw-r--r-- 1 root root 512 Aug 13 21:14 boot.0300
lrwxrwxrwx 1 root root 11 Aug 13 20:27 boot.b ->
boot-menu.b
-rw-r--r-- 1 root root 179 Aug 13 21:14 boot_message.txt
-rw-r--r-- 1 root root 728 Mar 9 05:41 chain.b
lrwxrwxrwx 1 root root 22 Aug 14 01:41 config ->

/usr/src/linux/.config
-rw------- 1 root root 25600 Aug 14 01:42 map
-rw-r--r-- 1 root root 512 Mar 9 05:41 mbr.b
-rw-r--r-- 1 root root 656 Mar 9 05:41 os2_d.b
-r-------- 1 root root 1061033 Aug 13 21:08 vmlinuz-2.4.18
-rw-r--r-- 1 root root 902124 Aug 14 01:33 vmlinuz-2.4.19
cat /etc/lilo.conf

lba32
boot = /dev/hda
prompt
timeout = 50
change-rules
reset
vga = normal

image = /boot/vmlinuz-2.4.19
root = /dev/hda2
label = Linux-2.4.19
read-only

image = /boot/vmlinuz-2.4.18
root = /dev/hda2
label = Linux-2.4.18
read-only


-----------------------------------------------
ls -l /usr/include/linux
lrwxrwxrwx 1 root root 28 Aug 14 01:21
/usr/include/linux -> /usr/src/linux/include/linux
-----------------------------------------------
ls -l /usr/include/asm*
lrwxrwxrwx 1 root root 21 Aug 14 01:28 /usr/include/asm ->
/usr/include/asm-i386
lrwxrwxrwx 1 root root 31 Aug 14 01:25
/usr/include/asm-i386 -> /usr/src/linux/include/asm-i386
-----------------------------------------------
ls -l /usr/src
total 8
lrwxrwxrwx 1 root root 12 Aug 14 01:09 linux ->
linux-2.4.19
drwxr-xr-x 14 root root 4096 Aug 14 01:33 linux-2.4.19
drwxr-xr-x 14 root root 4096 Aug 12 01:33 linux-2.4.18
-----------------------------------------------

Scripts recomendados

FIREWALL COM IPTABLES

Administração Squid

Alta disponibilidade de Links com CentOS 6

Medindo a velocidade de conexão

Backup Automatizado


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts