Como muitos de nós sabemos,
Con Kolivas voltou a contribuir com patches para o kernel
Linux.
Visando um melhor desempenho em desktops, proponho com esta dica compilar o último kernel estável (2.6.33) para o
Debian "Squeeze" com o patch do Con Kolivas.
Atenção aos usuários do Debian Lenny. Segui os mesmos passos e nas duas vezes que tentei compilar deu erro.
Eu também tenho uma máquina com o Lenny instalado (somente pacotes estáveis!), arquitetura i386.
A compilação deste kernel visava inicialmente instalá-lo no "Lenny", pois para usar meu modem 3G tive que fazer uma "gambiarra" e instalar o kernel 2.6.30-2-686 do "Squeeze".
Devido aos erros, testei no "Squeeze", tudo ocorreu normalmente e fiquei muito satisfeito com o desempenho deste kernel rodando na arquitetura amd64.
No decorrer da dica seguem algumas observações, por favor leiam e comentem.
Para que seu nome apareça como mantenedor do pacote, antes de iniciar a compilação, altere o arquivo
/etc/kernel-pkg.conf:
# nano /etc/kernel-pkg.conf
E modifique as seguintes linhas:
# The maintainer information.
maintainer := <seu nome>
email := <seu email>
Espero que testem e gostem!
Para compilar o último kernel estável e aplicar o patch do Con Kolivas, inicialmente devemos baixar o fonte do kernel e o respectivo patch, utilizaremos também o programa
kernel-package para gerar os .debs e faremos desta forma:
1 - instalação das dependências:
# apt-get update
# apt-get upgrade
# apt-get install build-essential bin86 bison fakeroot flex gcc cpp g++ kernel-package libqt3-headers libqt3-mt-dev make
2 - baixando o kernel 2.6.33 e o patch 2.6.33-ck1:
# wget -c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.33.tar.bz2
# wget -c http://www.kernel.org/pub/linux/kernel/people/ck/patches/2.6/2.6.33/2.6.33-ck1/patch-2.6.33-ck1.bz2
# bunzip2 patch-2.6.33-ck1.bz2
3 - movemos os sources para /usr/src:
# mv linux-2.6.33.tar.bz2 /usr/src/
# mv patch-2.6.33-ck1 /usr/src/
# cd /usr/src/
4 - descompactamos o novo kernel:
# tar -jxvf linux-2.6.33.tar.bz2
5 - criamos a ligação simbólica:
# rm -rf linux
# ln -sf linux-2.6.33 linux
6 - entramos no diretório do kernel a ser compilado e aplicamos o patch 2.6.33-ck1:
# cd linux
# patch -p1 < /usr/src/patch-2.6.33-ck1
7 - copiamos o config do kernel atual (leiam a observação):
Obs.: tecle TAB para escolher a versão ou antes, rode o comando "uname -r".
# cp -a /boot/config_do_seu_kernel_atual /usr/src/linux/.config
8 - abrimos o configurador (leiam a observação):
Obs.: uso o
KDE por isso uso o comando "make xconfig". Também podemos usar o comando "make menuconfig" (é necessário instalar os pacotes
libncurses5 e
libncurses5-dev).
# make xconfig
9 - limpamos as configurações anteriores:
# make-kpkg clean
10 - iniciamos a compilação do novo kernel (leiam a observação):
Obs.: a opção "--revision=+1.0" é apenas escolha pessoal, ela pode ser removida!
# make-kpkg --initrd --revision=+1.0 kernel_image kernel_headers
11 - fazemos backup do arquivo
/boot/grub/grub.cfg:
# cp -a /boot/grub/grub.cfg /boot/grub/grub-backup.cfg
12 - instalamos o novo kernel 2.6.33-ck1 e seu respectivo headers (leiam a observação):
Obs.: uso a arquitetura amd64.
# dpkg -i linux-image-2.6.33-ck1_+1.0_amd64.deb
# dpkg -i linux-headers-2.6.33-ck1_+1.0_amd64.deb
13 - geramos a imagem initrd para o novo kernel (leiam a observação):
Obs.: ainda não descobri porque recentemente ao instalar um novo kernel compilado com o kernel-package, o INITRD não é gerado! Caso alguém saiba, por favor comente!
# mkinitramfs -o /boot/initrd.img-2.6.33-ck1 /lib/modules/2.6.33-ck1
14 - por fim, atualizamos o grub:
# update-grub
Passos concluídos, basta reiniciar a máquina.
jasminn, sugiro que você recomece do zero, quando abrir o configurador apenas clique em File e em Save As, salve como .config.
Se você digitou # "jogo-da-velha" antes do comando não vai funcionar, pois no artigo o comando está comentado por esse símbolo, é o padrão aqui no VOL.
Informo também que se vc conseguir, ao terminar de compilar é essencial que faça os passos abaixo, senão vai dar KERNEL PANIC:
sudo mkinitramfs -o /boot/initrd.img-2.6.33-ck1 /lib/modules/2.6.33-ck1
sudo update-grub
#
Se ainda assim vc quiser compilar o Kernel, siga esse artigo:
http://www.vivaolinux.com.br/artigo/KernelCheck-Instalando-o-kernel-mais-recente-em-distros-Debianli...
É mais simplificado, quase sem interação com o usuário.
#
Outra maneira como já lhe disse é instalar o kernel do Debian Squeeze, já te passei os repositórios para inserí-los no APT. Vai eles de novo:
sudo nano /etc/apt/sources.list ### (salve com Ctrl+o e feche com Ctrl+x)
### ARQUIVO DE CONFIGURAÇÃO DE FONTES DO APT
## Debian 'Squeeze/Testing'
## Debian 'Squeeze/Testing' (Espelhos Brasileiros).
## (GPG Key: sudo apt-get install debian-archive-keyring debian-keyring debian-multimedia-keyring -y)
deb
http://ftp.br.debian.org/debian/ squeeze main contrib non-free
deb
http://ftp.br.debian.org/debian-security/ squeeze/updates main contrib non-free
deb
http://ftp.br.debian.org/debian-multimedia squeeze main non-free
## Debian 'Squeeze/Testing' (Espelhos Oficiais).
## (GPG Key: sudo apt-get install debian-archive-keyring debian-keyring debian-multimedia-keyring -y)
deb
http://ftp.debian.org/debian/ squeeze main contrib non-free
deb
http://security.debian.org/ squeeze/updates main contrib non-free
deb
http://www.debian-multimedia.org/ squeeze main non-free
#
Atualize o apt-get e instale o Kernel do Squeeze e seus headers.
sudo apt-get update
sudo apt-get install linux-image-2.6-686 linux-headers-2.6-686
sudo update-grub