miércoles, 13 de enero de 2010

Ejemplo modificar Grub

En este fichero estan las opciones de configuración mas globales del grub. Este fichero lo podemos encontrar en /etc/default/grub , así que vamos a editarlo y nos encontraremos con las siguientes opciones:

GRUB_DEFAULT= 0/saved, con la opción 0 hacemos que se seleccione por defcto la primera entrada, con la opción 1, la segunda, y así succesivamente. Con la opción saved, hacemos que siempre seleccione la última entrada que se ejecutó.
GRUB_TIMEOUT=10, le ponemos el tiempo de espera hasta ejecutar la entrada que tenemos puesta como default.

GRUB_HIDDEN_TIMEOUT=0, esconde el menú de entradas del grub, si le ponemos un tiempo mas alto lo que hace es esconder el menú, pero esperarse un tiempo hasta continuar. Para hacerlo visible tenemos que comentar la linea y que queda de la siguiente manera
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_MENU_QUIET=true/false, si está a "true" esconode la cuenta atrás, mientras que si está a "false" muestra la cuenta atrás.

GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null || echo Debian , determina el nombre de la entrada del menú.
GRUB_CMDLINE_LINUX="opciones", similar al altoptions del antiguo grub.
GRUB_CMDLINE_LINUX_DEFAULT
="quiet splash" , como vemos, otra forma de configurar las opciones sin reconfigurar el paquete :-)

Las otras opciones vienen comentadas en el mismo fichero de configuración, pero la que mas me interesa es la siguiente

#GRUB_GFXMODE=640x480

Bien, esto activa el grub gráfico, yo actualmente lo tengo de la siguiente forma:

GRUB_GFXMODE=1024x768

Ahora sigamos, ya hemos visto como modificar las características generales de nuestro nuevo grub2, pero vayamos a los scripts ...

El directorio de estos, como lo habitual en las distribuciones debian based, es el siguiente /etc/grub.d/
Aquí dentro podemos encontrar las siguientes carpetas:

· 00_header: Lo que hace es cargar las configuraciones del fichero /etc/default/grub.

· 05_debian_theme: Configura el fondo, texto, colores y temas.

· 10_hurd: Para kernels hurd.

· 10_linux: Para kernels basados en la distribución, los determina un lsb_release -i -s

· 20_memtest86+: Si el fichero /boot/memtest86+.bin existe lo introduce en la lista de entradas.

· 30_os-prober: Busca otros kernels y los introduce en el fichero de configuración

· 40_custom: Muy importante, cuando un kernel de otro S.O. no es detectado por el os-prober, podemos instroducirlo en este script, así se generará la entrada en el fichero grub.cfg.

Bien, ahora voy a mostrar un grub2 configurado tal y como lo tengo yo.empezamos por el /etc/default/grub

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=false
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT=""
GRUB_CMDLINE_LINUX=""

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE=1024x768

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entrys
#GRUB_DISABLE_LINUX_RECOVERY="true"

Ahora sigamos por el /etc/grub.d/40_custom:

menuentry SysrescueCD {
set root=(hd0,10)
linux /sysrcd/rescuecd subdir=sysrcd setkmap=us
initrd /sysrcd/initram.igz
}

No hay comentarios:

Publicar un comentario