Optimizando un kernel

Teño un portátil Dell XPS M1330 que véu cunha Ubuntu e agora o teño actualizado á versión 9.04. Case todo é de Intel (tarxetas de son, gráfica, rede, procesador…). É unha mágoa que un distribuidor de hardware como Dell non se tome a molestia de deixar optimizado o kernel dos seus equipos e sinxelamente instale os compoñentes para que esa distro funcione.

Púxenme mans á obra para compilar un kernel máis optimizado para o meu equipo, relembrando vellos tempos (hai dez anos!). A tarefa é para tomala con calma, paciencia e insistencia1.

Comecei instalando o necesario e aconsellable:

sudo apt-get install hardinfo kernel-package linux-source-2.6.28 build-essential makedumpfile libqt3-mt-dev

Posiblemente isto faga que instales outros paquetes por dependencias con estes. O seguinte é descomprimir as fontes do kernel, copiar a súa configuración actual e comezar a configuralo:

cd /usr/src ; sudo tar xjvf linux-source-2.6.28.tar.bz2
sudo ln -s linux-source-2.6.28/ linux
cd linux ; sudo cp -vi /boot/config-`uname -r` .config
sudo make xconfig

Nestes intres comeza a tarefa que vou facendo aos poucos, con paciencia, información e estratexia. Para ilo é bo contar coa infromación do sistema actual. Entroutros emprego a aplicación gráfica hardinfo e a saída do comando lsmod.

Para comezar a eliminar/engadir opcións ao teu núcleo podes comprobar que este artigo recomendado polo amigo Tonio suxire ir á opción Kernel Hacking e deseleccionar Compile the kernel with debug info. Outra incuestionable é a de seleccionar en Processor type and features / Processor family o teu procesador, no meu caso Core2. Gárdao e pecha.

Só con esas dúas xa notarías melloras e, polo tanto, recomendaría que fixeras a túa primeira compilación para que sirva de base progresiva á túa cada vez máis depurada personalización. Daquela o seguinte sería personalizar o arquivo /etc/kernel-pkg.conf onde podes pór o teu nome e correo-e (non vaia ser que logo o queiras compartir 🙂  ) . O seguinte sería ler a páxina man make-kpkg e logo facer   (sempre dentro de /usr/src/linux):

sudo su
cp .config ../config-2.6.28-13-brenlla-20090710
make-kpkg clean
make-kpkg --initrd  --us --uc
--append-to-version=-brenlla-20090710
kernel-image kernel-headers
cd ..
dpkg -i linux-headers-2.6.28-brenlla-20090710.deb
dpkg -i linux-image-2.6.28-brenlla-20090710.deb

A primeira compilación pode demorar unha hora, as depuradas menos de media…  Revisa o teu GRUB (/boot/grub/menu.lst), reinicia e arranca elixindo o te novo kernel. Se todo rula como é desexado, próbao durante uns dias para teres a certeza de que é adecuado para o teu equipo. De ser así, repite o proceso e vai depurando o teu kernel eliminando as moitísimas opcións que non necesitas indo pouco a pouco, tendo a certeza do que fas así ad infinitum cando xa queiras ir probando ao límite dos teus coñecementos.

(1) O de ter calma é importante pois hai opcións mutuamente dependentes, polo que cometer un erro é moi doado. Na miña segunda compilación fun “a saco“, eliminei varias opcións e trala compilación tiña WiFi pero non rede por cabo…

asennadastegnix_limpo_fdo_transparentemoi-pequeno

Os comentarios están pechados.