Primeiro, devemos obter alguns pacotes essenciais no processo: o kernel-package, gcc e libncourses5-dev. Sem eles não será possível a compilação.
# apt-get install kernel-package
# apt-get install gcc
# apt-get install libncurses5-dev
OBS: Algumas dependências serão instaladas automaticamente.Vamos escolher o kernel a ser compilado. Visite o site:
* http://kernel.org/
Logo na entrada vemos o último kernel estável disponível, sendo este que você deve buscar. No momento que escrevi esta dica era o 2.6.21
Pule para a página de download do kernel:
* http://www.kernel.org/.../v2.6/
E faça o download do kernel clicando em cima do arquivo linux-source-2.6.21.tar.bz2.
também pode ser baixado via apt-get (que coloca o arquivo linux-source-2.6.21.tar.bz2 na pasta /usr/src) com o comando:
# apt-get install linux-source-2.6.21
Descompacte-o em /usr/src com o comando (pode usar o file-roller tb... :P):# tar -vxjpf linux-source-2.6.21.tar.bz2 -C /usr/src
Baixe também o linux-image e linux-kbuild:# apt-get install linux-image-2.6.21 (tem q ser a mesma versão do sources)
# apt-get install linux-kbuild-2.6.21 (tem q ser a mesma versão do sources)
Um diretório linux-source-2.6.21 foi criado. Agora entre nele:OBS-2: Se você quiser manter as configurações atuais do seu kernel no que está prestes a compilar, faça o seguinte (senão, pule esta parte)(mas recomendo começar pelas configurações atuais do seu kernel):
# cp /boot/config-2[pressione TAB] .config
# make oldconfig
Agora vamos ao que interessa, rode o menuconfig com o comando:# make menuconfig
Uma tela com os parâmetros do kernel surgirá. Esta parte é importante, pois você deve saber o que fazer e conhecer seu hardware, afim de não carregar drivers desnecessários ou esquecer os fundamentais para o funcionamento da máquina, enfim, não tenha medo de errar, o máximo que acontecerá é perder tempo, já que seu kernel funcional vai continuar na máquina e se errou algo, pode removê-lo via apt-get.OBS-3: uma boa dica na hora de configurar, é ver os módulos que estão rodando no kernel atual. isto pode tirar muitas dúvidas quanto às configurações de drivers para o seu hardware (o manual da placa-mãe tb ajuda... :P).
vc pode conferir os módulos ativos com o comando:
$ lsmod
Quando terminar, salve a configuração e saia do menuconfig, em seguida, crie um pacote com seu novo kernel:# make-kpkg --initrd kernel_image
Esta parte irá demorar (bastante). Ao terminar, saia do diretório atual:$ cd ..
E instale seu kernel:# dpkg -i linux-image-2[pressione TAB]
Pronto! Nem nas configurações do gerenciador de boot terá que mexer, pois o Debian faz para você. Reinicie seu computador e verifique se ocorrerá algum erro.Para remover o kernel que vc compilou, no caso de algo dar errado, pode fazê-lo diretamente pelo apt-get com o comando:
#apt-get remove --purge linux-image-2.6.21
OBS-4: para os distraidos, não vá tentar remover o kernel enquanto roda ele, coisas mto bizarras podem acontecer :PPode apagar a pasta linux-source-2.6.21, pois não será mais usada.
Caso queira fazer novas alterações no kernel q compilou, descompacte novamente o pacote linux-source-2.6.21.tar.bz2 (não use a pasta anteriormente criada com os sources, pois isto trará erros com a versão na hora de criar o pacote) e siga os mesmos passos novamente. Não se esqueça de personalizar a versão do kernel para não ter problemas com nomes iguais. existe uma opção para isto no proprio menuconfig, ou pode fazê-lo na hora de criar o pacote, substituindo o comando:
# make-kpkg --initrd kernel_image
por este:# make-kpkg --append-to-version "-nome-personalizado" --initrd kernel_image
criando assim o kernel-image-2.6.21-nome-personalizadoAgora é só reiniciar no novo kernel...
E não se esqueça, toda vez q compilar um kernel diferente, terá q compilar módulos de drivers novamente, como os drivers da Nvidia, por exemplo...
P.S.: para quem tiver problemas com drivers da Nvidia em kernels acima de 2.6.18, deixo o link a seguir...
https://www.hardware.com.br/comunidade/nvidia-kernel/758496/
Só isso...