Configurar Grub2 con entrada a ISO de Clonezilla

En esta entrada vamos a realizar una configuración muy sencilla del GRUB2, una vez instalado, o reinstalado (ver), si reiniciamos la máquina, lo más seguro es que este no aparezca si sólo tenéis un sistema operativo instalado, no os preocupéis, está instalado, sólo necesitamos modificar un par de cosas.

Lo primero que tenemos que saber es que GRUB2 está dividido en varios ficheros, a diferencia de GRUB Legacy, ya no tenemos menu.lst, disponemos de /boot/grub/grub.cfg, fichero que no debemos editar a mano. La configuración general que podemos modificar la encontramos en /etc/default/grub y suele tener un aspecto parecido al siguiente.

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# 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 entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

Lo primero que debemos hacer para que aparezca el menú del GRUB2 es comentar la siguiente línea:

GRUB_HIDDEN_TIMEOUT=0

Dejándola como sigue:

#GRUB_HIDDEN_TIMEOUT=0

Otra línea que nos puede interesar es la que nos permite establecer la resolución del modo gráfico, basta con cambiar los valores.

GRUB_GFXMODE=1024x768

Ahora, para añadir nuestras entradas de forma manual modificaremos el fichero /etc/grub.d/40_custom, este contendrá todas nuestras entradas personalizadas.

$ sudo gedit /etc/grub.d/40_custom

En mi caso he añadido una nueva entrada para que carge una imagen ISO de Clonezilla, puedes añadir todas las ISOs que quieras, sólo tienes que especificar la ruta para encontrarla.

menuentry "Clonezilla live" {
    set isofile="/home/isos/clonezilla-live-1.2.12-67-i486.iso"
    loopback loop $isofile
    linux (loop)/live/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run=\"ocs-live-general\" ocs_live_extra_param=\"\" ocs_live_keymap=\"NONE\" ocs_live_batch=\"no\" ocs_lang=\"es_ES\" vga=788 ip=frommedia nosplash toram=filesystem.squashfs findiso=$isofile
    initrd (loop)/live/initrd.img
}

Entre las llaves {} encontramos cuatro líneas, set, loopback, linux y initrd.

Con estos pasos ya tendremos disponible nuestro GRUB2 con una entrada para Clonezilla desde una ISO. Ya sólo nos queda actualizar el GRUB2.

$ sudo update-grub2

Y ver como queda.

Au!!

Fuentes:
Crashbit’s place
ubuntu-guia
Clonezilla