Tengo entradas repetidas en el grub de Ubuntu 12.04, tras re-instalarlo (el grub) desde la sesión 'live' (Solucionado)

Imagen de Jose Luis 1320
316 puntos

Hace unos días instalé fedora 16 en mi disco duro, al hacerlo el grub de fedora se instaló y sobreescribió el MBR.

Como no quería tener el grub de fedora en mi MBR, me puse a instalar el grub de mi instalación de Ubuntu 12.04, aquel que tiene el fondo de color morado.

La instalación la hice desde la sesión live (ya no digo liveCD por que ya no cabe en uno y decir live-usb se me hace muy feo xD)

Pero lo hice de la siguiente manera, según Guía-Ubuntu (http://www.guia-ubuntu.org/index.php?title=Recuperar_GRUB);

Desde la sesión live ya cargada, abrí Terminal; monte mi volumen en donde tengo Ubuntu 12.04:

sudo mount -t /dev/sda8 /mnt <-- En /dev/sda8 tengo Ubuntu 12.04 

luego al montar mi unidad en /mnt hice otros montajes, no se muy que clase de montajes sean pero me imagino que monto diversas partes del sistema /mnt al sistema montado de la sesión live en mi RAM;

sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys

luego cambie en la sesión de terminal mi root al de /mnt:

sudo chroot /mnt

Y al final la instalación:

sudo grub-install --recheck /dev/sda

La instalación fue exitosa, no tengo problemas para arrancar los sistemas operativos, pero lo extraño es que tengo repetidas las entradas del Ubuntu del cual tengo el grub ya instalado.

Yo tengo los siguientes sistemas operativos en mi computadora

Ubuntu 12.04
Debian estable
Ubuntu 11.10
Fedora 16

A excepción de Debian, en todos los sistemas operativos tengo 2 kernel uno nuevo y otro viejo. el problema es que tengo los kernel de Ubuntu 12.04 repetidos, tanto el nuevo como el viejo. en el grub tengo algo como esto:

Ubuntu con Linux 3.2.0-24-generic 
Ubuntu con Linux 3.2.0-24-generic (modo de recuperación)
Previous Linux Versions 
Memtest
Ubuntu con Linux 3.2.0-24-generic 
Ubuntu con Linux 3.2.0-24-generic (modo de recuperación)
Previous Linux Versions 
...
Los demás

En los 2 Linux previous versions tengo las respectivas entradas del kernel 3.2.0-23.

Dentro de Ubuntu 12.04 hago el sudo update-grub y me sale que encuentra las imágenes de los kernel (nuevo y viejo) dos veces:

Generating grub.cfg ...
Found linux image: /boot/vmlinuz-3.2.0-24-generic
Found initrd image: /boot/initrd.img-3.2.0-24-generic
Found linux image: /boot/vmlinuz-3.2.0-23-generic
Found initrd image: /boot/initrd.img-3.2.0-23-generic
Found linux image: /boot/vmlinuz-3.2.0-24-generic
Found initrd image: /boot/initrd.img-3.2.0-24-generic
Found linux image: /boot/vmlinuz-3.2.0-23-generic
Found initrd image: /boot/initrd.img-3.2.0-23-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Debian GNU/Linux (6.0.5) on /dev/sda1
Found Ubuntu 11.10 (11.10) on /dev/sda11
Found Fedora release 16 (Verne) on /dev/sda5
done

Lo que esta en negritas es lo que aparece repetido en las entradas del grub.

Al ver que tengo en / y en /boot no veo nada repetido; en / tengo los respectivos vmlinuz e initrd.img en orden, tanto los actuales y los viejos (con la extensión .old); es decir sin repetirse.
¿que estará pasando?.

Imagen de Double Dragon
+1
0
-1

..pero con Grub customizer puedes hacer desaparecer los antiguos kernels y con dpkg --get-selections | grep linux-image y sudo apt-get remove --purge paquete puedes elimintarlos, XD.

+1
0
-1

Con paciencia se obtiene y recompensa.

Imagen de Jose Luis 1320
+1
0
-1

Pero ese no es el problema que tengo, El problema no es que tenga muchos kernel instalados, tengo solamente 2, el 3.2.0-24 y el 3.2.0-23, el problema es que el grub me detecta esos 2 mismos kernel 2 veces.

Justo como lo tengo explicado en mi hilo :).

Saludos!.

+1
0
-1

"Yo sólo se que no se nada"
-Sócrates, filósofo griego.
-Normas del foro

Imagen de Jose Luis 1320
+1
0
-1

El problema es que tenía dos scripts que me generan las entradas repetidas, el script en cuestión es el 10_linux, que se ubica en /etc/grub.d, este script se encarga de crear las entradas del sistema operativo de en donde tienes el grub activo.

El problema con ese script, es que Canonical por sus políticas extrañas, decidieron que en el tiempo entre grub y plymouth el usuario debería de ver una pantalla morada, justo como el fondo morado en el grub que ellos ofrecen.

Ellos lo hacen mediante unas líneas de código en el script mencionado; estas:

for word in $GRUB_CMDLINE_LINUX_DEFAULT; do
  if [ "$word" = splash ]; then
    GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT \$vt_handoff"
  fi
done

En el caso de nosotros, quienes usamos una nefasta tarjeta nvidia, nos da problemas a la hora de querer usar una resolución decente de plymouth (con nvidia el logo de Ubuntu siempre se verá feo a menos que hagas algunas modificaciones) y debemos remover esas líneas evitando que grub produzca una especie de terminal virtual con la pantalla morada que causa problemas con el framebuffer de vesa. (el cual nos da la resolución adecuada de plymouth, cosa que el driver de nvidia no, de eso se trata la modificación incompatible con vt.handoff=7).

En mi caso modifique ese script ejecutable quitando esas lineas, pero respaldé el original como 10_linux.bak y el resultado es que al hacer sudo update-grub desde terminal, el programa toma todo lo que tengas ejecutable en /etc/grub.d, y como 10_linux.bak es también ejecutable entonces me creó las entradas de los kernel de Ubuntu 12.04 junto a 10_linux, posteriormente las entradas repetidas.

No quise remover ese script, entonces le quité los permisos de ejecución:

sudo chmod -x /etc/grub.d/10_linux.bak

y a actualizar grub de nuevo (sudo update-grub) y vualá, Problema Solucionado.

Este hilo en Ubuntu forums, me aclaró el problema: http://ubuntuforums.org/showthread.php?t=1675617

+1
0
-1

"Yo sólo se que no se nada"
-Sócrates, filósofo griego.
-Normas del foro

Imagen de colindo
+1
0
-1

hola jose luis
¿al fin encontrastes la solucion?
pues a mi me causado solo perder el tiempo siguiendo esos datos
saludos

+1
0
-1
Imagen de Jose Luis 1320
+1
0
-1

Te invito a que por favor leas mi comentario detenidamente.

Que tu pierdas el tiempo me es completamente irrelevante, hay que leer detenidamente para ver la solución, en caso de que tengas el mismo e idéntico problema al que yo tuve y por las mismas causas.

Igual y tienes otro problema, ya que el que expongo aquí es muy específico y que al final fue causado por un error totalmente mío.

Y otra cosa, mi intención cuando comenté la solución no es para nada para personas que no saben nada de Linux, debes tener algo de conocimiento adquirido para llegar tu mismo a la solución que propongo, que bien solo se trata de usar un simple comando en "Terminal" inclusive puedes hacerlo de forma gráfica con Nautilus, abierto claro con permisos de root.

Post solucionado con la solución, nada más que explicar, salvo corregir errores en la redacción.

+1
0
-1

"Yo sólo se que no se nada"
-Sócrates, filósofo griego.
-Normas del foro