Descrição
Como atualizar seu kernel Corretamente, Incluse os headers.
[ Download:
atualizakernel.txt ]
[
Enviar nova versão ]
[ 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
Conversor de logs do svn para rss
INSTALADOR TAR BZ2
iniciar squid automático
Script de Instalação de Layer7 no CentOS 6.0
Administração de Usuários
Comentários
| Nenhum comentário foi encontrado. |