9 de enero de 2010

Exo-RedPill-Compilación del Kernel 2.6.32.3 para Micra


En mi micro-servidor micra tengo instalado Debian 5.0-lenny y funciona muy bien, solo la wifi rt73 me da algunos problemillas:
  • Error wifi del kernel con mensages constantes a los ficheros logs.
  • Problemas en la configuración simultanea de la ethernet y wifi provocando desconexiones y teniedo que hacer netwoks restart.
  • No me funcionan los puentes de red ni la funcion AP de la wifi.
El kernel actual que tiene Lenny es el 2.6.26 y la última versión estable a día de hoy del kernel es la 2.6.32.3 que presenta interesantes mejoras.
Ha llegado el momento de recompilar el kernel de micra para actualizarlo y ver si puedo solucinar los problemillas de la red.

Y para dar ejemplo me aplicaré mis propias recetas:
- Recompilar el kernel mediante la píldora roja.
- Exo-recomplación del kernel para micra en lenny: un pentium2800MHz.

Pasos:
1) Descargamos el kernel 2.6.32.3 en lenny:/usr/src/.
Descompresión, Creamos el enlace simbólico linux a la carpeta del nuevo kernel.

2) Configuración:
Copiamos el fichero de configuración actual de micra:/boot/config-linux-2.6.26-486 a lenny:/usr/src/linux/

3) Compilamos el kernel 2.6.32.3:
La compilación no finaliza ya que me da un error de compilación:
...
make[1]: se sale del directorio `/usr/src/linux-2.6.32.3'
/usr/bin/make EXTRAVERSION=.3-pp01 ARCH=i386 \ -C Documentation/lguest make[1]: se ingresa al directorio `/usr/src/linux-2.6.32.3/Documentation/lguest' cc -m32 -Wall -Wmissing-declarations -Wmissing-prototypes -O3 -I../../include -I../../arch/x86/include -U_FORTIFY_SOURCE lguest.c -o lguest lguest.c:21:25: error: sys/eventfd.h: No existe el fichero o el directorio lguest.c: In function 'create_thread': lguest.c:1027: warning: implicit declaration of function 'eventfd' make[1]: *** [lguest] Error 1 make[1]: se sale del directorio `/usr/src/linux-2.6.32.3/Documentation/lguest' make: *** [debian/stamp/build/kernel] Error 2


Consultamos al oráculo: www.google.com
Posible problema (1):
http://www.debianadmin.com/step-by-step-tutorial-howto-compile-kernel-in-debian-5-0-lenny.html
http://www.esdebian.org/foro/27925/error-compilar-kernel-2626

Parece ser puede surgir este error sin no está instalada la librería zlib1g-dev.
Veamos si tenemos instalada la librería zlib1g-dev:

lenny:# dpkg -l|grep zlib1g-dev ii zlib1g-dev - 1:1.2.3.3.dfsg-12 - compression library - development

Pues esta correctamente instalada, esto no es la causa del error, a seguir buscando.

Posible problema (2), esta es la solucción:
Error al compilar Kernel 2.6.31.5: lguest / eventfd
2.6.31 for Debian 5/Lenny

Parece ser que hay un problema con libc-dev al instalar lguest.
Recomienda solcionarlo del siguiente modo:

lenny:# nano /usr/src/linux/Documentation/lguest/Makefile
-Cambiamos- "all: lguest" por "all:"

Y vuelta a realizar los pasos 1), 2), 3) .. y funciona!!!
generando los paquetes debian

linux-kernel-26-32-3-pp01.deb
linux-headers-2-6-32-3-pp01.deb

4) Instalación del paquete en micra.
micra:# dpkg -i linux-kernel-26-32-3-pp01.deb
micra:# dpkg -i linux-headers-26-32-3-pp01.deb

5) micra reboot
Funciona a la perfección.

Y ha solucionado el problema con la wifi rt73 de la generación de errores que llenaba warnings el kern.log

Ref:
Caracteristicas del Kernel 2.6.32

No hay comentarios:

Publicar un comentario