Personalizar en 5 minutos el menú GRUB2 en Ubuntu 9.10

Índice

  1. Introducción.
  2. Material necesario.
  3. Requisitos.
  4. Agregar una entrada al menú del GRUB2.
  5. Poner una imagen de fondo al menú del GRUB2.
  6. Cambiar el color de las letras del menú GRUB2.
  7. Ejemplo rápido con XP, FreeBSD y Kubuntu.
  8. Recuperar menú GRUB2 después de instalar Windows 7.
  9. Eliminar entradas a antiguas versiones del kernel.
  10. Enlaces / links.

1. Introducción

El GRUB2 es una “aplicación” que permite seleccionar de un menú el sistema operativo con el que deseamos trabajar, el Ubuntu 9.10 viene con esta versión y aparentemente es igual a la versión anterior.

El problema viene cuando intentamos agregarle una entrada nueva al menú del GRUB2, es en ese momento cuando nos damos cuenta que estamos trabajando con una versión nueva y con mejoras.

Este tutorial intenta explicar con ejemplos como modificar el GRUB2.

2. Material necesario

  1. Una computadora.
  2. Suficiente espacio en el disco duro para instalar 3 sistemas operativos (Windows, Slackware y Ubuntu).

3. Requisitos

Se tiene particionado el disco duro de la siguiente manera :

    Para lograr lo anterior debemos instalar los sistemas operativos en el siguiente orden :

  1. Windows XP, Vista ó 7 ( Instala el NT loader )
  2. Slackware64 v13 ( Por omisión instala LILO )
  3. Ubuntu 9.10 ( lo instalamos al ultimo porque instala el GRUB2 )

Al hacer lo anterior, Ubuntu reconoce correctamente el Windows que tengamos instalado y agrega la entrada correspondiente en el menú del GRUB2, no sucede lo mismo con el Slackware64 v13 por lo que tendremos que agregar manualmente la entrada en el menú del GRUB2.

4. Agregar una entrada al menú del GRUB2

En este ejemplo estamo suponiendo que queremos agregar una entrada para Slackware64 v13.

Para agregar entradas al menú GRUB2 debemos:

  1. Crear un archivo que comience con un número igual o mayor que 11 y menor que 20, en nuestro caso lo llamaremos “11_Slackware64v13” para eso utilizaremos nuestro editor favorito que puede ser gedit, kate, nano, etc. (si quieres puedes bajar el archivo 11_Slackware64v13 de aqui)

  2. En nuestro caso debemos escribir lo siguiente en el archivo “11_Slackware64v13” :#!/bin/sh
    #    Agregar una entrada al menú GRUB2 para el Slackware64 v13
    echo “Agregando Slackware64 v13” >&2
    cat << EOF
    menuentry “Slackware64 v13 ” {
    set root=(hd0,5)
    linux /boot/vmlinuz root=/dev/sda5 ro vga=795
    }

    EOF

  3. copiar “11_Slackware64v13” en el directorio /etc/grub.d/ : sudo cp 11_Slackware64v13 /etc/grub.d/

  4. Hacer ejecutable “11_Slackware64v13” :sudo chmod a+x /etc/grub.d/11_Slackware64v13

  5. Actualizar el GRUB2:sudo update-grub2

5. Poner una imagen de fondo al menú del GRUB2

  1. Descargamos imagenes “splash” para el GRUB2 :sudo apt-get install grub2-splashimages

  2. Buscamos el directorio /usr/share/images/desktop-base, en caso de no existir creamos un enlace suave :sudo ln –bs /usr/share/images/grub /usr/share/images/desktop-base

  3. Seleccionamos la imagen que nos guste del directorio /usr/share/images/grub en este caso supondremos que nos gusto TulipStair_QueensHouse_Greenwich.tga

  4. Creamos un enlace suave a la imagen que nos gusto :sudo ln –bs /usr/share/images/grub/TulipStair_QueensHouse_Greenwich.tga /usr/share/images/desktop-base/moreblue-orbit-grub.tga

  5. Actualizamos el GRUB2 :sudo update-grub2

6. Cambiar el color de las letras del menú GRUB2

Abrimos el archivo /etc/grub.d/05_debian_theme y modificamos las líneas 39 y 40

sudo kate /etc/grub.d/05_debian_theme

La línea 39 “set color_normal=white/black” indica que el texto normal será de color blanco con fondo transparente y la línea 40 “set color_highlight=white/light-blue” indica que el texto resaltado/seleccionado será de color blanco con fondo azul cielo.

Debemos observar que en ambos casos el negro = transparente cuando lo ponemos como color de fondo.

Los posibles colores que podemos utilizar son:

white  blue magenta cyan
light-gray yellow red light-magenta
dark-gray green light-blue light-red
 black light-cyan light-green brown
* Tabla de colores sacada de GNU GRUB 1.97

7. Ejemplo rápido con XP, FreeBSD y Kubuntu

    Supongamos un disco duro organizado así

Como podemos apreciar Linux no reconoce fácilmente las particiones FreeBSD pero no debemos preocuparnos, solo seguimos las instrucciones antes mencionadas y creamos un archivo llamado 12_FreeBSD que contenga lo siguiente:

#!/bin/sh -e
#    Agregar una entrada al menú GRUB2 para el FreeBSD v8.0

echo “Agregando FreeBSD v8.0” >&2
cat << EOF
menuentry “FreeBSD v8.0” {
        set root=(hd0,2)
        chainloader +1
}
EOF

y con eso logramos que inicie el FreeBSD v8.0.

8. Recuperar menú GRUB2 después de instalar Windows 7

Supongamos que instalamos el Windows 7 en la partición donde teníamos Windows XP, esto provocará que nuestro menú GRUB2 sea borrado del MBR y no podamos iniciar los SO que teníamos instalados.

Para remediar este problema sin necesidad de reinstalar Kubuntu ni FreeBSD haremos lo siguiente:

  1. Insertamos el disco de instalación de Kubuntu ( LiveCD o LiveDVD ) y seleccionamos “Probar Kubuntu sin alterar su equipo” y esperamos a que termine de cargarse el escritorio ).

     

  2. Una vez que se cargo el escritorio, abrimos Konsole ( en Ubuntu podemos usar gnome-terminal ).
  3. Revisamos como está particionado el disco duro para verificar en que partición esta Kubuntu.

    sudo fdisk –l /dev/sda

  4. Creamos un directorio para montar el Kubuntu.

    sudo mkdir /kubuntu

  5. Montamos Kubuntu.

    sudo mount /dev/sda5 /kubuntu

  6. Montamos proc

    sudo mount –t proc none /kubuntu/proc

  7. Montamos dev

    sudo mount –o bind /dev /kubuntu/dev

  8. Montamos sys

    sudo mount –t sysfs sys /kubuntu/sys

  9. Hacemos root /kubuntu

    sudo chroot /kubuntu

  10. Instalamos el GRUB2 en el MBR.

    grub-install /dev/sda

  11. Actualizamos el menú GRUB2 para que agregue automaticamente una entrada para el Windows 7.

    update-grub2

    En caso de éxito tendremos un resultado como el de la siguiente imagen 

  12. Salimos y reiniciamos ( recuerda quitar el DVD o CD que nos ayudo a rescatar el sistema ).
  13. En caso de que con los pasos anteriores no se reconocieran todos los SSOO volvemos a correr update-grub2 desde el Kubuntu de nuestra PC con ayuda de Konsole;

    un ejemplo del problema mencionado se puede apreciar en la siguiente imagen 

    Cannot find list of partitions

9. Eliminar entradas a antiguas versiones del kernel

  1. Editamos el archivo /etc/grub.d/10_linux : sudo gedit /etc/grub.d/10_linux
  2. “Comentamos” la línea 121 y agregamos list=”” para que quede así

     

  3. Actualizamos el menú del GRUB2 : sudo update-grub2

10. Enlaces / links

GNU GRUB 1.97

GRUB 2 – 5 Common Tasks

Grub 2 Title Tweaks

GRUB2

The Grub 2 Guide (formerly Grub 2 Basics)

Documentaci{on Gentoo — Instalando el sistema base de Gentoo – chrooting

Recuperar GRUB – Guía Ubuntu

Suerte a todos.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s