[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: compilando mi primer kernel



El Domingo 12 Diciembre 2004 10:00, Adal Alom Rodríguez escribió:
> Hola, buenos días.

Hola.

> Llevo un mes con Debian y ya es hora de compilar mi kernel, ¿no creen?

Si es por aprender y por experimentar, que no quede :)

> Pues lo intenté. Y no ha salido bien, parece.

Jejeje... A mí el 90% de las veces me sale mal, así que ahora que ya sé cómo 
se hace sólo compilo el kernel cuando no me queda más remedio (en casos donde 
hay hardware no soportado por el kernel). Si la máquina funciona bien con el 
kernel precompilado de Debian, NI LO TOCO.

> Tengo funcionando el 2.6.8-1-686 y ese mismo ha sido el que he intentado
> compilar ¿Es malo compilar el mismo kernel que el que está funcionando?

No, no es malo, aunque en ese caso habrás de tomar algunas precauciones. Si te 
sale mal la compilación y no tienes otro kernel DE DIFERENTE RAMA, vas a 
tener problemas a la hora de iniciar el ordenador otra vez. La cuestión es 
que si sólo gastas un 2.6.X y lo recompilas tienes que estar seguro de que 
todo está correcto (módulos, imagen de arranque...) antes de reiniciar, 
porque como, por ejemplo, no te compile bien los módulos, vas a tener una 
hermosa pantalla negra al reiniciar y te tocará hacer virguerías para 
recuperar tu sistema.

Por todo esto, ANTES de meterte en compilaciones de kernel te recomiendo que 
hagas una cosa:

# apt-get install kernel-image-2.4.27-1-686

Así tendrás un kernel funcional para iniciar tu sistema en caso de que no te 
salga bien la compilación del 2.6.8.

> La parte 'grave' llega cuando despues de seleccionar y compilar (en
> principio sin errores) hago make install, make modules y make
> modules_install. Uso GRUB y no se me añade ninguna entrada para cargar
> mi nuevo kernel y no tengo ni la menor idea de donde se ha compilado.
> Supongo que es en /usr/source que es donde descargué las fuentes pero...
> no estoy seguro. Tampoco en cuentro el initrd.

OK. Te digo cómo lo hice yo para la rama 2.6:

Antes que nada, si has compilado ya y has obtenido errores, vete 
al /lib/modules y borra la carpeta que contiene los módulos para el 2.6. 
Después vete a /boot y borra todo lo relativo al 2.6 (config, initrd, 
system.map y vmlinuz). Deberías haber instalado la imagen 2.4.27, como te 
dije arriba. Si no lo has hecho, hazlo YA.

1 - Te vas al # cd /usr/src/linux (o donde tengas las fuentes del kernel).
2 - make clean
3 - make mrproper

Ya está todo limpito de compilaciones anteriores :)

4 - make xconfig

Te configuras el kernel como creas conveniente. Tómate tu tiempo, que hay 
muchos dispositivos y muchas configuraciones. No tengas prisa por acabar y si 
no sabes algo, consulta en la lista o donde sea.

5 - make all

Este comando te hace la bzImage y te construye los módulos, todo de una 
tirada.

6 - make modules_install

Te instala los módulos recién compilados en /lib/modules.

7 - make install

Te instala todo el percal (vmlinuz, system.map, config) en el 
directorio /boot.

8 - mkinitrd -o initrd-2.6.X.img 'versión_del_kernel_que_acabas_de_compilar'

Con este último comando creamos la imagen initrd, que creo que se te había 
olvidado a ti. después de la '-o' escribes el nombre que le quieres dar a la 
imagen initrd y después el número de versión del kernel, que es el mismo que 
el del archivo 'kernel-sources', no el largo este de -1-686.
La imagen creada está en el mismo directorio en el que te encuentras, así que 
haces # ls, te la buscas por ahí y te la copias a /boot # cp -v 
initrd-2.6.X.img /boot.

Y ahora ya tienes todo lo necesario para que arranque tu kernel nuevo recién 
compilado. Sólo tienes que configurar GRUB, y aquí ya no te puedo ayudar 
porque este gestor de arranque no lo he tocado demasiado :p

En fin, espero haberte sido útil.

Saludos.

-- 
José Luis Patiño Andrés
jose.lpa@ono.com
Linux user #356839



Reply to: