Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Recompilar el kernel a partir de uno compilado con genkernel
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Spanish
View previous topic :: View next topic  
Author Message
lia
n00b
n00b


Joined: 14 Feb 2007
Posts: 12
Location: Eso me gustaría saber a mí...

PostPosted: Tue Apr 03, 2007 7:21 am    Post subject: Recompilar el kernel a partir de uno compilado con genkernel Reply with quote

Hola,

Se que me expongo haciendo esta pregunta, pero no encuentro respuestas rápidas en google... y creedme, llevo semanas con el tema y ya necesito respuestas rápidas.
He cometido el error de compilar el kernel con genkernel (por aquello de la velocidad y la facilidad) ... tal vez necesite recompilarlo otra vez por un asunto de tarjetas gráficas... el caso es que me he planteado hacerlo a la vieja usanza (make menuconfig) pero me he encontrado con ciertos problemas:

- A pesar de que yo misma lo cree, ahora el fichero de configuración del grub, ha desaparecido. (Se que alguno se reirá y dirá que mi portatil es como un capítulo de expediente X, pero lo acepto, debería saber más sobre el tema). Así que no se si debería reinstalar Grub o ...

- No se como podría utilizar la configuración actual (no me apetece volver a empezar de 0) para no perder las pocas cosas que ya tengo...

- No estoy pidiendo que me lo digáis paso por paso... sólo que me digáis dónde encontrar un documento que diga cómo se hace.

- ¿Qué ocurre cuando compilas con genkernel?¿dónde va el grub?¿qué ocurre con las fuentes?

Salu2,

Lía.
_________________
Lía
"La eterna aspirante a aprender linux"
Back to top
View user's profile Send private message
Zagloj
Guru
Guru


Joined: 17 Jun 2005
Posts: 344

PostPosted: Tue Apr 03, 2007 7:31 am    Post subject: Reply with quote

Veamos, el grub no hay problema, el genkernel no le hace nada, reinstala el grub si quieres pues lo único que puede pasar es que te arregle las cosas o que no pase nada, por otra parte, si has leido el manual, recuerda que el grub para genkernel tiene una configuración distinta a la de si lo compilas manualmente (y asegúrate de montar la particón boot si lo tienes en otra partición antes de editarlo).

Por otra parte, el kernel lo puedes volver a compilar con el menuconfig de toda la vida, además ya tendrás la configuración base del genkernel, si es que no eliges otra versión. Las fuentes deberían estar en
Code:
/usr/src/
Allí puedes buscar tus kernel.

Saludos ;)

Pd Y siempre leerse entero : http://www.gentoo.org/doc/es/handbook/

A parte, http://es.gentoo-wiki.com/HOWTO_Compilar_el_kernel_manualmente
_________________
Your ideology seems to be: "I hate the fanatics, we shoud kill them all" juantxorena dixit.
Back to top
View user's profile Send private message
darkelphos
Apprentice
Apprentice


Joined: 09 Sep 2005
Posts: 175

PostPosted: Tue Apr 03, 2007 12:43 pm    Post subject: Reply with quote

Hola lo más rapido es:

Code:
genkernel --menuconfig all


Y desde el menu del kernel guardas el .config con el nombre que quieras.

Luego desde /usr/src/linux

haces:

Code:
make menuconfig


y en la opcion load del kernel cargas el .config con el nombre anterior.

Ya tienes el kernel con las opciones de genkernel.

También tienes las opciones de genkernel en: /usr/share/genkernel/x86(en mi caso. tu puede que tengas x86_64 u otra cosa)/kernel-2.6-config

o algo asi no recuerdo muy bien. Lo puedes copiar a la carpeta /usr/src/linux con el nombre que quieras y luego lo cargas desde menuconfig.

Un saludo!
_________________
[img:b01f68de1b]http://img219.imageshack.us/img219/6815/firmabalzac5hn.jpg[/img:b01f68de1b]
Back to top
View user's profile Send private message
Eleazar Anzola
Veteran
Veteran


Joined: 17 Jul 2003
Posts: 1318
Location: Caracas / Venezuela

PostPosted: Tue Apr 03, 2007 2:44 pm    Post subject: Reply with quote

Por simple curiosidad ¿Montaste el boot antes de verificar el kernel? por lo general suele suceder que se nos olvida montarlo y lo copiamos en el directorio /boot del / en vez de en la partición que hicimos para boot.

Te recomiendo antes de nada revisar /boot sin montar la partición a ver si fue eso lo ocurrido, si alli no hay nada entonces monta el /boot y verifica nuevamente si esta todo alli ó no.

Si es que todo esta en el raiz en el /boot en vez de en la particion del /boot muevelo a tu home y monta boot para despues proceder a copiarle todo a la partición montada de /boot :P .

Algo confuso hasta para mi que lo escribi pero con algo de suspicacia se entiende :P

para poder hacer el kernel con genkernel, ver el menuconfig para justar la configuración del mismo y además hacer que agregue el kernel al grub debes modificar el /etc/genkernel.conf
Code:

MENUCONFIG="yes" //cambiar esta opción a "yes" que por defecto viene a "no" esto hace que te ponga el mnuconfig antes de compilar y asi modificas el kernel

BOOTLOADER="grub" //descomentar esta linea para que lo agregue al grub con la configuración del kernel anterior pero con el kernel nuevo
despues de esto haces un
Code:
genkernel all
justo despues del enter se monta el /boot apareces el menuconfig donde afinas tu kernel y al salir solito compila el kernel, los modulos y al final se agregan las lineas necesarias al /boot/grub/grub.conf, el resto es reiniciar y listo.

Ojo es de acotar que en el grub ya debe existir al menos una configuración previa para que se puedan ajustar las nuevas lineas al grub.

Suerte.
_________________
Salu2
Eleazar Anzola
Linux User : # 216232
__________________________________________
Por un foro ordenado y un buscador más útil:
[TEMA] Descripción problema (estado)
Back to top
View user's profile Send private message
pcmaster
Advocate
Advocate


Joined: 04 Dec 2003
Posts: 2222
Location: Barcelona

PostPosted: Tue Apr 03, 2007 4:55 pm    Post subject: Reply with quote

http://www.gentoo.org/doc/es/kernel-upgrade.xml#doc_chap10
_________________
pcmaster
Back to top
View user's profile Send private message
lia
n00b
n00b


Joined: 14 Feb 2007
Posts: 12
Location: Eso me gustaría saber a mí...

PostPosted: Wed Apr 04, 2007 4:35 pm    Post subject: Reply with quote

Primero... gracias a todos por contestar. Concretando, gracias Eleazar, porque no se si entiendo TODO lo que has dicho, pero puede ser que realmente haya metido la pata de esta forma (esto pasa por no saberse las cosas e instalar como un burro, siguiendo al pie las instrucciones sin pararse a pensar...y sobre todo, sin tener ni idea). De hecho, si estás en lo cierto, puede que mi grub.conf esté en alguna parte... :wink: (aunque creo que lo busqué concienzudamente con el find).
Esta tarde, me pongo a comprobarlo...

Otra cosa, si alguien quiere ver el desenlace de todo esto, creo que finalmente no voy a tener que recompilar (son las X las que me están dando problemas, y se que es en concreto un módulo), así que primero voy a intentar no tener que compilar el nucleo al completo (aunque de todas formas, todavía me quedo con curiosidad de si sería capaz de recompilar el núcleo a partir del que tengo y además meter correctamente la entrada en el grub...

Salu2,
_________________
Lía
"La eterna aspirante a aprender linux"
Back to top
View user's profile Send private message
lia
n00b
n00b


Joined: 14 Feb 2007
Posts: 12
Location: Eso me gustaría saber a mí...

PostPosted: Thu Apr 05, 2007 11:41 am    Post subject: Reply with quote

Bueno, me desdigo y confieso que ayer estuve intentado recompilar el kernel con las instrucciones que darkelphos me dió. No ha dado resultado, el caso es que el kernel obviamente se compiló, y que además el Grub ya estaba instalado en mi sistema, el principal problema es que no encontré el archivo de configuración original, y aunque realicé uno nuevo y teoricamente lo instalé en el MBR, el sistema operativo se reinició como si nada... es decir, hasta donde yo se, con la configuración del kernel antiguo... (por cierto, "uname -a" te dice cual es el kernel que estás corriendo en la actualidad, ¿no?).
El caso es que el kernel soy capaz de compilarlo, pero no soy capaz de cambiar el archivo antiguo de grub.conf (por otra parte inexistente) por el nuevo que apunta al nuevo kernel (tal vez esto sea una burrada, pero tengo que confesar: en el proceso, sólo copie la nueva imagen del kernel en "/boot", pero hasta donde yo ví, los manuales no decían nada de crear enlace simbólico alguno, y creo que eso es algo que sí he hecho con anterioridad en otras compilaciones que funcionaron...)

¿alguna pista?

Salu2,
_________________
Lía
"La eterna aspirante a aprender linux"
Back to top
View user's profile Send private message
v1ll4
n00b
n00b


Joined: 26 Feb 2005
Posts: 24

PostPosted: Thu Apr 05, 2007 12:25 pm    Post subject: Reply with quote

La configuración del kernel que actualmente tienes en memoria , la tienes en /proc, para conseguir una copia y poder cargarla , yo haría lo siguiente :

Code:

villa-portatil ~ # cp /proc/config.gz /usr/src/linux/prueba.config


Igual eso puede ayudarte.
No se realmente lo de crear enlace simbolico, yo lo que hago es primeramente , montar /boot:

Code:

villa-portatil linux # mount /boot


Una vez montado, copio el kernel en boot :

Code:

villa-portatil boot # cp /usr/src/linux/arch/i386/boot/bzImage /boot


y luego , edito el archivo grub.conf en /boot/grub/grub.conf.Este ultimo, si no quieres editarlo, solo tienes que copiar el kernel en el paso anterior con el nombre del que tienes actualmente.
Esto ultimo no lo recomiendo, yo suelo mover el kernel que tengo actualmente y copiarlo como kernel.viejo, y el kenerl nuevo como kernel, así en caso de que el nuevo kernel vaya mal (que suele ocurrir :D ), solo tengo que editar el grub y cargar el anterior, añadiendole solo ".viejo".No me entiendo ni yo :oops:
_________________
In Ballantines we trust
Back to top
View user's profile Send private message
i92guboj
Bodhisattva
Bodhisattva


Joined: 30 Nov 2004
Posts: 10315
Location: Córdoba (Spain)

PostPosted: Thu Apr 05, 2007 2:26 pm    Post subject: Reply with quote

lia wrote:

- A pesar de que yo misma lo cree, ahora el fichero de configuración del grub, ha desaparecido. (Se que alguno se reirá y dirá que mi portatil es como un capítulo de expediente X, pero lo acepto, debería saber más sobre el tema). Así que no se si debería reinstalar Grub o ...


Reinstaler grub no te ayudará con eso, ni va a hacer que tu configuración vuelva, ni va a crear una configuracińo por tí. Tu configuración está en la partición de boot, si no la tienes montada, no podrás encontrarlo aunque uses find o slocate durante dos meses :P Si no estás segura de si tu boot está montada o lo ves algo negro, pega aquí la salida de estos comandos:

Code:

$ grep boot /etc/fstab
$ mount | grep boot


Eso nos dará la información que necesitamos para saber si tu boot está en su sitio, o nos permitirá decirte como solucionar el tema. Un consejo, si tienes la opción noauto en tu línea fstab para boot, y eres una persona despistada para estas cosas, mejor quita la opción, y así boot se montará sola al inicio, igual que las demás particiones.

Quote:

- No se como podría utilizar la configuración actual (no me apetece volver a empezar de 0) para no perder las pocas cosas que ya tengo...


Ve a tu /usr/src/linux o el dir en el que vivan las fuentes de tu kernel actual (chequea tu kernel actual con uname -r), y copia el archivo ".config" -con punto delante- al dir de tu nuevo kernel. Si lo que quieres es reconfigurar ese mismo kernel a mano, tan solo ve a ese directorio y haz make menuconfig.

Quote:
- ¿Qué ocurre cuando compilas con genkernel?¿dónde va el grub?¿qué ocurre con las fuentes?


Las fuentes se instalan en /usr/src/<kernel-name-version>, genkernel no mueve nada, solo configura y compila dicho kernel. No tengo ni idea de si lo instala, y tampoco tengo ni repajolera idea de si configura el grub.conf o no. Nunca me he sentido cómodo con utilidades de este tipo, precisamente porque me cuesta memorizar que es lo que hacen o no hacen, y al final, acabo revisándolo todo a mano igualmente, para eso prefiero hacerlo yo desde primera hora y me quito un problema de en medio.

lia wrote:
Bueno, me desdigo y confieso que ayer estuve intentado recompilar el kernel con las instrucciones que darkelphos me dió. No ha dado resultado, el caso es que el kernel obviamente se compiló, y que además el Grub ya estaba instalado en mi sistema, el principal problema es que no encontré el archivo de configuración original, y aunque realicé uno nuevo y teoricamente lo instalé en el MBR, el sistema operativo se reinició como si nada...


Como no tengo ni idea de que es lo que estás intentando arreglar, no se tampoco muy bien como orientarte. En primer lugar, grub.conf no se graba en el mbr, simplemente reside en la partición boot, grub lo busca allí cuando lo necesita. Precisamente por eso, grub no es como lilo, no necesitamos reinstalar grub cada vez que cambiemos su config, simplemente editamos grub.conf y reiniciamos, como grub.conf se lee del disco duro cada vez que es necesario al inicio, no es necesario instalar nada. Tu grub.conf está en su sitio, y probablemente el nuevo que has creado sea invisible, porque estará en tu partición / en un dir llamado /boot, que no se corresponde con la partición en la que hayas grabado tu anterior grub.conf, que será el que estés usando.

Es un poco lioso, pero es al contenido de tu partición /boot (que no es lo mismo que el dir /boor en tu partición /) a lo que tienes que hacer caso. En primer lugar, si tu grub.conf hubiera desaparecido ni siquiera podrías arrancar grub normalmente. Tendrías que editar una línea de kernel al arranque para poder iniciar, y el menú de grub ni saldría. Puedes comparar el caso de /boot al caso de /mnt/cdrom, tu puedes entrar en ese dir normalmente y verás que está vacío, hasta que no montes el cdrom (aunque lo tengas en la unidad) no saldrá nada en ese dir. Si pones algo en ese dir sin tenerlo montado entonces el contenido quedará grabado en un archivo en la partición /, dentro del dir mnt/cdrom/, pero en la partición /. Con boot pasa igual, seguramente has estado operando sin montarlo, y ese es todo el problema.

Con el kernel lo mismo, seguramente lo instalaste sin montar boot, y está donde no es. Tando tu kernel como tu nuevo grub.conf están flotando en un dir dentro de / que no es el correcto. Repite todos los pasos con /boot montado en su partición y todo debería funcionar.

Quote:
es decir, hasta donde yo se, con la configuración del kernel antiguo... (por cierto, "uname -a" te dice cual es el kernel que estás corriendo en la actualidad, ¿no?).


Si, pero lo que tienes que mirar no es la versión, mira la fecha y hora de compilación, si no es de hace cinco minutos o de la vez última que hayas compilado el kernel, entonces no estás usando el kernel que tu crees.

Quote:

El caso es que el kernel soy capaz de compilarlo, pero no soy capaz de cambiar el archivo antiguo de grub.conf (por otra parte inexistente) por el nuevo que apunta al nuevo kernel (tal vez esto sea una burrada, pero tengo que confesar: en el proceso, sólo copie la nueva imagen del kernel en "/boot", pero hasta donde yo ví, los manuales no decían nada de crear enlace simbólico alguno, y creo que eso es algo que sí he hecho con anterioridad en otras compilaciones que funcionaron...)

¿alguna pista?

Salu2,


Si las explicaciones de arriba son algo confusas, pregunta. He visto estos errores miles de veces, y son algo simple de solucionar, pero no tan simple de asimilar para los recién llegados. No tengas pena en preguntar lo que necesites, y suerte con esos kernels :P

Saludos.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Spanish All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum