Fedora 16 y Grub2

Publicado el mar 08 noviembre 2011

Hoy se liberó Fedora 16 (Verne), el que incorpora Grub2 por defecto. Esta nueva versión cambia la forma en que se configura, ya que la configuración queda dividida en varios archivos:

  • /etc/default/grub: contiene parámetros generales
  • /etc/grub.d/*: contiene script para elementos específicos

La modificación de cualquiera de éstos deberá ser acompañada por la ejecución del siguiente comando para que sus efectos sean visibles:

grub2-mkconfig -o /boot/grub2/grub.cfg

/etc/default/grub
Este archivo define las siguientes opciones:

  • GRUB_CMDLINE_LINUX
    Contiene los parámetros adicionales que se agregarán a la línea del kernel, como por ejemplo GRUB_CMDLINE_LINUX="quiet rhgb".
  • GRUB_DISABLE_RECOVERY
    Define si se debe crear una entrada "Recovery" para cada kernel encontrado. GRUB_DISABLE_RECOVERY="true" eliminará la creación de entradas "Recovery".
  • GRUB_DISTRIBUTOR
    Define el nombre de la distribución a mostrar en las entradas. Por ejemplo GRUB_DISTRIBUTOR="Fedora"
  • GRUB_TIMEOUT
    Define el tiempo, en segundos, de espera antes de iniciar la entrada por defecto. Para 5 segundos será GRUB_TIMEOUT=5.
  • GRUB_GFXMODE
    Define la resolución de Grub2 en modo gráfico. Por ejemplo GRUB_GFXMODE="1280x800" define resolución 1280x800 y GRUB_GFXMODE="1280x800x32" define resolución 1280x800 con 32 bits de profundidad de color.
  • GRUB_TERMINAL
    Define el modo del Grub. Los valores son console y gfxterm (modo gráfico).
  • GRUB_DEFAULT
    Indica que entrada será la por defecto. GRUB_DEFAULT=0 indica que será la primera entrada encontrada.

Activar el modo gráfico
Para activar el modo gráfico (gfxterm) se deben realizar los siguientes pasos:

  1. Crear una fuente:

grub2-mkfont -o /boot/grub2/unifont.pf2 path_a_fuente.ttf

Si deseamos cambiar el tamaño, por ejemplo 18:

grub2-mkfont -o /boot/grub2/unifont.pf2 path_a_fuente.ttf -s 18

  1. Modificar /etc/default/grub y dejar las variables así:

GRUB_GFXMODE="resolucion preferida"
GRUB_TERMINAL="gfxterm"

  1. Ejecutar grub2-mkconfig -o /boot/grub2/grub.cfg

Agregar imagen de fondo
Grub2 acepta agregar una imagen de fondo en formato jpg, png y tga. Para agregar una imagen de fondo debemos:

  1. Activar el modo gráfico
  2. Seleccionar una imagen en resolución adecuada y copiarla a /boot/grub2/
  3. Editar el archivo /etc/grub.d/41_custom, en este caso se usa insmod jpeg pero puede ser insmod png o insmod tga según el formato de la imagen. El archivo debería queda así:

    1
    #!/bin/sh
    

    cat <<EOF if [ -f \$prefix/custom.cfg ]; then source \$prefix/custom.cfg; fi insmod jpeg background_image /grub2/fondo.jpg EOF

  4. Ejecutar grub2-mkconfig -o /boot/grub2/grub.cfg

Cambiar color de letras
Una vez que hemos logrado cargar el fondo, deberemos ajustar el color de las letras para que se vean bien. Para ello debemos conocer los colores posibles:

  • white
  • blue
  • magenta
  • cyan
  • light-gray
  • yellow
  • red
  • light-magenta
  • dark-gray
  • green
  • light-blue
  • light-red
  • black
  • light-cyan
  • light-green
  • brown

Para configurar el color debemos:

  1. modificar el archivo /etc/grub.d/41_custom y agregar la línea set color_normal=letra/fondo antes de la última línea (EOF). Si se deja el color de fondo en black, será interpretado como transparente y es el adecuado para cuando se tiene imagen de fondo.
  2. Ejecutar grub2-mkconfig -o /boot/grub2/grub.cfg

tags: Linux, Fedora, grub2