Recompilando ou Compilando o Kernel

Vantagens:

  • Desempenho do kernel: o kernel padrão das distribuições funcionam em qualquer máquina. Isso pode causar perda de desempenho e até a instabilidade.

  • Suporte aos dispositivos: você ativa somente o suporte aos dispositivos existentes da sua máquina, diminuindo o tamanho do kernel e liberando mais memória.

  • Você casa o kernel com sua máquina. :-)

Desvantagens:

  • Você deverá conhecer sua máquina, senão, você poderá desabilitar dispositivos que estavam funcionando.

Obtendo a versão mais nova do kernel

Você poderá obter a versão mais no kernel no seguinte endereço: http://www.kernel.org/. Abaixo está disponível o script completo, desde o download do kernel até o funcionamento do mesmo na sua máquina.

<BASH> code | Pure Source
  1. #!/bin/sh
  2. #
  3. # Descrição: Compilar o novo Kernel
  4. #
  5. # Baixar e Compilar o novo Kernel independente da distribuição GNU/Linux
  6. #
  7. # Autor: Maximiliano R. Mascarenhas
  8. #
  9. # Data: 11/04/2010 15:41
  10. #
  11. # E-mail: maximiliano.mascarenhas@gmail.com
  12.  
  13. # 1 - Baixando a versão mais nova do KERNEL:
  14.  
  15. versao="linux-2.6.33.2"
  16.  
  17. wget -c --directory-prefix=/home/$USER/ --limit-rate=30k http://www.kernel.org/pub/linux/kernel/v2.6/"$versao".tar.bz2
  18.  
  19. # -c : Retoma o download de um arquivo baixado parcialmente
  20. # --directory-prefix= : Caminho do diretório onde será salvo o arquivo
  21. # --limit-rate= : Limita a taxa de download
  22.  
  23. # 2 - Descompactando o arquivo em /usr/src:
  24. tar -jxvf /home/$USER/"$versao".tar.bz2 -C /usr/src
  25.  
  26. # 3 - Criando um link apontando para o novo kernel
  27. ln -sf /usr/src/"$versao" /usr/src/linux
  28.  
  29. # 4 - Entrando no diretório /usr/src/linux
  30. cd /usr/src/linux
  31.  
  32. # 5 - Neste ponto, não tem como escolher os módulos a serem compilados
  33. # automáticamente, esse trabalho é com você. Mas, você terá 3 opções:
  34. # make config(configuração em modo texto),
  35. # make menuconfig (configuração através de menus)
  36. # make xconfig (configuração em modo gráfico).
  37. # Obs: o "make xconfig" necessita de algumas bibliotecas para funcionar,
  38. # usarei aqui o "make menuconfig" que funciona em todas as distribuições.
  39. # Abrirá uma interface no console para você escolher o que será compilado.
  40.  
  41. make menuconfig
  42.  
  43. # 6 - Verificar depedências:
  44. make dep
  45.  
  46. # 7 - Limpar construções anteriores do kernel:
  47. make clean
  48.  
  49. # 8 - Iniciar a compilação do kernel estático:
  50. make bzImage
  51.  
  52. # 9 - Compilar os módulos referente aquele kernel:
  53. make modules
  54.  
  55. # 10 - Instalando os módulos do novo kernel em /lib/modules/:
  56. make modules_install
  57.  
  58. # 11 - Saindo do diretório /usr/src/linux
  59. cd
  60.  
  61. # 12- Copiando o arquivo bzImage (este arquivo contém o kernel) para /boot
  62. cp /usr/src/linux/arch/x86/boot/bzImage /boot/vmlinuz-"$versao"
  63.  
  64. # 13 - Criando um novo link apontando para o novo kernel
  65. ln -sf /boot/vmlinuz-"$versao" /boot/vmlinuz
  66.  
  67. # 14 - Gerando um novo setor de partida (GRUB ou LILO):
  68. grub=`ls /sbin/grub-install`
  69.  
  70. if [ -e "$grub" ]
  71. then
  72. /sbin/grub-install
  73. else
  74. lilo
  75. fi
  76.  
  77. # 15 - Reiniciando a máquina:
  78. reboot
Posted in Uncategorized at abril 12th, 2010. 1 Comment.