> Colegas, en estos días estoy tratando de compilar el kernel 2.6.38
personalizado con los drivers que necesito para el hardware que tengo,
solo que el proceso de generar el fichero .config me resulta bastante
dificil con las herramientas tradicionales y necesito saber si existe
alguna herramienta que me automatice el proceso. En definitiva lo que
necesito es una herramienta que detecte el hardware y los respectivos
drivers y me genere un .config con esta información y me excluya los
drivers que no necesito, para proceder a compilar el kernel y luego
instalarlo. Les pido su cooperación en este sentido.
>

no se si es make menuconfig lo que buscas o alguna opcion relativa, pero
te dejo lo que se al respecto.
En Debian viene toda la documentacion en el paquete kernel-package
Te agrego a continuacion lo que hice para compilar el kernel 3.04, espero
te de alguna idea.

Bien, primero que todo en Debian Lenny es necesario instalar una version
mas reciente del paquete kernel-package. La que tenia mi Debian Lenny no
me pincho. Consegui la 12.036.

Si la tienes en un repo apuntar el sources.list a el y ya saben:
apt-get install kernel-package

Si lo que tienen es un .deb
dpkg -i kernel-package-xx.xx.deb

Despues segui los 10 pasos de Kent, disponibles en
/usr/share/doc/kernel-package/Readme.gz

Bueno, ahora necesitas las fuentes del kernel. Yo consegui el kernel 3.0.4
en tar.bz2

asi que pudes hacerlo todo en /usr/local/src/ o si prefieres otro lugar,
vale tambien.

tar jxvf linux-3.0.4.tar.bz2

cd linux-3.0.4

make menuconfig

Desmarcar todo lo relativo a virtualizacion (para evitar problemas con
lguest que aun no se si lo necesitare algun dia, pero por ahora creo que
no, hay varias opciones al respecto). lguest me daba unos palos
lindisimos.

En Processor type and features, deshabilitar la opcion que dice
Paravirtualized guest support

y en el menu principal la opcion Virtualization

No olvides seleccionar el tipo correcto de procesador, segun el que tengas.

Decir que si al preguntar si quieres grabar el fichero .config cuando
vayas a salir.


make-kpkg clean

make-kpkg --initrd kernel_image kernel_headers

Esto puede durar horas. En mi caso alrededor de 2h.

dpkg -i /usr/local/src/linux-image-3.0.4.deb

A pesar de que probe con la opcion --initrd no me creo el dichoso fichero
(y me daba unos palos lindisimos tambien al tratar de arrancar al estilo
de kernel panic, unable to mount root fs on unknown block), asi que tuve
que hacerlo yo mismo con

mkinitramfs -k -o /tmp/initrd.img-3.0.4 3.0.4

despues copie el fichero creado (initrd.img-3.0.4) para /boot . Este
fichero esta en un directorio dentro de /tmp/ (no recuerdo el nombre y se
borro ya, pero la salida del comando de arriba te dice donde esta).

despues se modifica el grub (si es grub lo que usas). Vas a
/boot/grub/menu.lst

quedando mas o menos asi:

....
title   Debian GNU/Linux, kernel 3.0.4
root    (hd0,0)
kernel  /boot/vmlinuz-3.0.4 root=/dev/sda1  ro  quiet
initrd  /boot/initrd.img-3.0.4

......

La ultima linea fue la que agregue.
Puedes fijarte en la configuracion que tenias en el kernel anterior.

y reinicia. eso es todo. es muy facil, una vez que sabes como hacerlo.

init 6

saludos y que les aproveche, colegas.

Felix Lazaro Carbonell.




______________________________________________________________________
Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba.
Gutl-l@jovenclub.cu
https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l

Responder a