# Error al querer configurar el kernel (solucionado)

## coppiano

Hola, tengo un problema y no se porque surge, hago

```
# cd /usr/src/linux

# make menuconfig
```

para que me habra el menu de configuracion del kernel como siempre y me aparece el siguiente mensaje

make: *** No rule to meke target 'menuconfig'. Stop.

alguien sabe que puede ser??

se puede haber borrado el archivo de configuracion de alguna forma y si es asi como lo recupero?

gracias de antemanoLast edited by coppiano on Thu Oct 21, 2010 2:40 am; edited 1 time in total

----------

## dark_sasuke

Sera que no has hecho emerge gentoo-sources? ... aveces las cosas mas tontas son las que se olvidan XD

----------

## pelelademadera

o probablemente emergiste y no hiciste el link

hace un 

```
eselect kernel list
```

si te aparece algun kernel, hace 

```
eselect kernel set #
```

y si no aparece, falta hacer el emerge como te dijeron arriba

----------

## coppiano

hice el "eselect kernel list"

y me salio:

```

[1] linux-2.6.34-gentoo-r6 *

[2] linux-2.6.34-gentoo-r11
```

lo cual creo que esta bien porque estoy usando el r6 en el grub y es el que use siempre hasta ahora

Pero mi duda es porque ya es como la cuarta vez que genero el kernel con "make menuconfig" y siempre anduvo bien.

La ultima vez que genere el kernel fue hace 1 semana y no tuve ningun problema.

¿al actualizar todo con el emerge puede haber pasado algo?

¿r11 que me aparece lo tengo tambien en la maquina o es la version actual que puedo bajar?

----------

## i92guboj

Solo para asegurarnos de que nada trivial pasa, por favor, publica el resultado de esta secuencia de comandos.

```
$ cd /usr/src/

$ pwd

$ ls -l
```

----------

## coppiano

el $ cd /usr/src/  entro en la carpeta normalmente.

el $ pwd devolvio:

```
/usr/src
```

y el $ ls -l devolvio:

```
total 15

lrwxrwxrwx  1 root root    22 Oct 19 00:34 linux -> linux-2.6.34-gentoo-r6

drwxr-xr-x 23 root root  1024 Oct 11 21:20 linux-2.6.34-gentoo-r11

drwxr-xr-x 20 root root  2048 Oct 11 22:13 linux-2.6.34-gentoo-r6

drwx------  2 root root 12288 Oct  3 13:47 lost+found

```

creo que esta todo bien

una pregunta afuera del tema, el kernel r11, se bajo cuando actualice todo desde el emerge??

gracias =)

----------

## i92guboj

 *coppiano wrote:*   

> el $ cd /usr/src/  entro en la carpeta normalmente.
> 
> el $ pwd devolvio:
> 
> ```
> ...

 

Mira dentro de /usr/src/linux-2.6.34-gentoo-r6 y dinos qué es lo que ves. La versión r11 probablemente se instaló al actualizar tu sistema con emerge. Puede que la versión r6 haya sido desinstalado por un emerge --depclean o algo similar. El directorio siempre queda porque contiene ficheros que no estaban cuando se instaló el paquete (ficheros de código objeto, el .config y otros). Siempre puedes volver a instalar dicha versión del kernel usando algo como 

```
$ emerge =gentoo-sources-2.6.34-r5
```

Siempre que dicha versión siga en portage. De todas formas no hay razón para no actualizar.....

----------

## JotaCE

 *i92guboj wrote:*   

>  *coppiano wrote:*   el $ cd /usr/src/  entro en la carpeta normalmente.
> 
> el $ pwd devolvio:
> 
> ```
> ...

 

Yo pienso como i92guboj si tu kernel actual es funcional para tu maquina no hace falta actualizarlo. en lo personal una vez configurado el kernel no lo actualizo nunca. como politica es bastante practica.

----------

## coppiano

Esto es lo que hay dentro de /usr/src/linux-2.6.34-gentoo-r6

```
-rw-r--r--  1 root root   430803 Oct  6 14:47 Module.symvers

-rw-r--r--  1 root root  1758564 Oct  6 14:46 System.map

drwxr-xr-x  4 root root     1024 Oct 11 22:13 arch

drwxr-xr-x  2 root root     2048 Oct 11 22:13 block

drwxr-xr-x  3 root root     9216 Oct 11 22:13 crypto

drwxr-xr-x 52 root root     2048 Oct 11 22:13 drivers

drwxr-xr-x 20 root root     2048 Oct 11 22:13 firmware

drwxr-xr-x 35 root root     5120 Oct 11 22:13 fs

drwxr-xr-x  5 root root     1024 Oct 11 22:13 include

drwxr-xr-x  2 root root     1024 Oct 11 22:12 init

drwxr-xr-x  2 root root     1024 Oct 11 22:12 ipc

drwxr-xr-x  5 root root     7168 Oct 11 22:13 kernel

drwxr-xr-x  4 root root     7168 Oct 11 22:13 lib

drwxr-xr-x  2 root root     4096 Oct 11 22:12 mm

-rw-r--r--  1 root root     5184 Oct  6 14:46 modules.builtin

-rw-r--r--  1 root root    26591 Oct  6 14:46 modules.order

drwxr-xr-x 23 root root     2048 Oct 11 22:13 net

drwxr-xr-x  6 root root     2048 Oct 11 22:13 scripts

drwxr-xr-x  2 root root     1024 Oct 11 22:13 security

drwxr-xr-x 19 root root     1024 Oct 11 22:13 sound

drwxr-xr-x  2 root root     1024 Oct 11 22:12 usr

-rwxr-xr-x  1 root root 16156327 Oct  6 14:46 vmlinux

-rw-r--r--  1 root root 13105551 Oct  6 14:46 vmlinux.o
```

en realidad no tengo problema en actualizar pero al actualizar, cuando hago el make config ya me carga las opciones del kernel que esta en ejecucion?? o sea ahora que no puedo hacer el make menuconfig, ademas de no saber como compilar de nuevo el kernel, no se como recuperar las opciones del que estoy usando

----------

## opotonil

Me paso una vez y la solucion tal y como comenta @i92guboj fue re-emergerlo, pero prefiero hacerlo añadiendo "--oneshot" para que no meta esa version en concreto en world.

```

emerge --oneshot =gentoo-sources-2.6.34-r6

```

 *Quote:*   

> 
> 
> en realidad no tengo problema en actualizar pero al actualizar, cuando hago el make config  ya me carga las opciones del kernel que esta en ejecucion?? o sea ahora que no puedo hacer el make menuconfig, ademas de no saber como compilar de nuevo el kernel, no se como recuperar las opciones del que estoy usando
> 
> 

 

Siendo una revision de la version que estas utilizando no te tendria que dar problemas:

```

eselect kernel set 2 (segun la salida de arriba de "eselect kernel list")

cd /usr/src/linux

make oldconfig

make menuconfig (si quieres revisar o modificar algo)

make && make install modules_install

```

Con eso ya lo tendras compilado, los modulos instalados y el kernel en /boot (si esta en su propia particion asegurate de que este montada) tan solo te queda comprobar la configuracion de grub para que apunte al nuevo kernel, manten el kernel anterior y la configuracion de grub para él por lo menos hasta arrancar una vez con el nuevo y comprobar que todo va bien.

Salu2.

----------

## Eleazar Anzola

Teniendo dos fuentes de kernel una r6 y la otra r11 ¿has intentado borrar el r6 y crear el enlace al r11?

```
sudo rm -rf /usr/src/linux

sudo rm -rf /usr/src/linux-2.6.34-gentoo-r6 

sudo eselect kernel set 1

sudo cd /usr/src/linux && sudo makeconfig
```

Quizas al actualizar los fuentes el portage quito el viejo y solo dejo algunos archivos que otras aplicaciones llaman cuando necesitan compilarse, tal como sucede con nvidia, ati, etc.

----------

## coppiano

Ya pude hacer un make menuconfig

una pregunta, para que sirve el make oldconfig, es para recuperar la configuracion del kernel que esta corriendo?? y sino como hago eso, porque cuando lo use me volvio a preguntar muchas cosas incluyendo el procesador por ejemplo y no entiendo.

y si no es para recuperar la configuracion del kernel en ejecucion, se puede hacer eso de alguna forma??

----------

## pelelademadera

 *opotonil wrote:*   

> Me paso una vez y la solucion tal y como comenta @i92guboj fue re-emergerlo, pero prefiero hacerlo añadiendo "--oneshot" para que no meta esa version en concreto en world.
> 
> ```
> 
> emerge --oneshot =gentoo-sources-2.6.34-r6
> ...

 

yo en gral hago al revez. emergo sin oneshot y de esa manera no me actualiza nada, lo que si hago es copiar el ebuild y los parches necesarios de la version exacta del kernel a mi overlay, de manera de que no me rete cuando desaparezca del arbol oficial

----------

## codestation

 *coppiano wrote:*   

> Ya pude hacer un make menuconfig
> 
> una pregunta, para que sirve el make oldconfig, es para recuperar la configuracion del kernel que esta corriendo?? y sino como hago eso, porque cuando lo use me volvio a preguntar muchas cosas incluyendo el procesador por ejemplo y no entiendo.
> 
> y si no es para recuperar la configuracion del kernel en ejecucion, se puede hacer eso de alguna forma??

 

make oldconfig genera una configuración para tu kernel a partir del .config de tu kernel antiguo y solo te preguntará por las cosas que no existan en el .config viejo que ahora existen en el nuevo. Ojo que no es automagico así que primero debes poner la configuración de tu antiguo kernel en /usr/src/linux[version_de_kernel]/.config.

Para recuperar la configuración del kernel en ejecución hay varias maneras: sacandolo de /proc/config.gz (si llegaste a habilitar esa opción en tu kernel), sacarlo de /boot/config-<version_de_tu_kernel> (si lo instalaste con make install) o del viejo directorio de compilación de tu kernel (portage no lo borra así que deberia estár alli a menos que lo hallas borrado por tu cuenta o haber hecho un make mrproper).

----------

## coppiano

Muchas gracias a todos, ya con lo que dijo codestation entendi creo que todo y ya pude recuperar la configuracion y hacer el kernel nuevo =)

----------

