SDB:Añadir imágenes iso a grub

Saltar a: navegación, buscar
Probado en openSUSE Artículos recomendados Artículos relacionados
Icon-checked.png
  • Probado en openSUSE 12.3

Icon-manual.png Icon-ayuda.png

Introducción

A partir de la versión 12.3, openSUSE incluye GRUB 2 como cargador de arranque. Una de las ventajas de esta nueva versión es la posibilidad de arrancar una imagen iso desde dicho menú sin necesidad de grabarla previamente a un medio físico. Esto resulta ventajoso para arrancar una live a modo de prueba o una iso de instalación a fin de cambiar de versión o reparar un sistema dañado. También te puede servir para hacer la instalación si la BIOS de tu equipo no te permite arrancar desde un puerto USB.

No utilices este método para instalar si alojas la imagen iso en una partición que piensas formatear durante la instalación, o si dicha partición usa encriptación.

Dialogo advertencia 64x64.png

Identifica la partición que contiene la imagen

Lo primero que tendrás que hacer es descargarte y alojar las imágenes iso en un directorio de una partición que no pienses formatear si reinstalas, y luego identificar dicha partición para describirla correctamente en el archivo de configuración de GRUB. GRUB 2 (y también GRUB) utilizan una notación de este tipo para identificar las particiones (hd0,1), por ejemplo. En este caso se hace referencia a la partición 1 del primer disco (0).

Para saber de qué partición se trata puedes ejecutar

lsblk

En mi caso tengo las imágenes alojadas en /datos/ISOS/. El comando me devuelve

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 931,5G  0 disk 
├─sda1   8:1    0     1K  0 part 
├─sda4   8:4    0 889,5G  0 part /datos
├─sda5   8:5    0   1,4G  0 part [SWAP]
├─sda6   8:6    0  16,4G  0 part /
└─sda7   8:7    0  24,3G  0 part /home
sr0     11:0    1  1024M  0 rom  

Se trata entonces de la partición /dev/sda4, o lo que es lo mismo, (hd0,4), que es la notación que hay que pasarle a GRUB.

Escribe los cambios

Existe un archivo desde el que podemos escribir las nuevas entradas que queramos añadir a GRUB. Tan sólo hay que editarlo como root con el comando que aparece a continuación y escribir al final del mismo:

# nano /etc/grub.d/40_custom

Si el archivo es una imagen iso habitual de instalación

Añade lo siguiente al final del archivo, cambiando los valores en negrita a los que corresponda en tu caso:

menuentry "openSUSE 12.3 DVD" {
  set isofile=/ISOS/openSUSE-12.3-DVD-i586.iso
  set root=(hd0,4)
  set arch=i386
  loopback loop $isofile
  linux (loop)/boot/$arch/loader/linux install=hd:$isofile
  initrd (loop)/boot/$arch/loader/initrd
}
  • El primer valor en negrita se corresponde con el nombre que le quieres dar a la entrada del menú.
  • El segundo es la ruta donde se aloja el archivo iso dentro de la partición en la que está alojada y su nombre.
  • El tercero se corresponde con la arquitectura de la imagen. Hace referencia a una ruta dentro de la propia iso. Móntala, abre el directorio boot y mira el nombre del subdirectorio que contiene a su vez el subdirectorio loader. El nombre de ese subdirectorio es el que tienes que colocar ahí. (Ver captura a continuación).
  • El último es el valor que corresponde a la partición que identificaste antes.
Contenido-dvd.jpg

En mi caso no he montado la imagen para explorar su contenido, simplemente la he abierto mediante Ark.

Si el archivo es una imagen live

En este caso la notación cambia ligeramente:

menuentry "openSUSE 12.3 KDE Live" {
  set isofile=/ISOS/openSUSE-12.3-KDE-Live-i686.iso
  set rootdevice=/dev/sda4
  set root=(hd0,4)
  set arch=i386
  loopback loop $isofile
  linux (loop)/boot/$arch/loader/linux isofrom=$rootdevice:$isofile
  initrd (loop)/boot/$arch/loader/initrd
}

Sustituye los valores en negrita por los que corresponda en tu caso.

Cuando lo hagas, guarda los cambios y cierra el archivo.

Actualiza GRUB

Simplemente ejecuta

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

Por último, reinicia:

reboot

Ten en cuenta el riesgo que supone añadir estas entradas al menú de arranque. Para saber más sobre GRUB 2 consulta el manual de openSUSE Enlace en inglés

Knotes 128x128.png

Deshaciendo los cambios

Cuando quieras deshacer esos cambios y volver a la configuración inicial, simplemente vuelve a editar el archivo anterior y déjalo tal y como lo encontraste. Seguidamente lanza de nuevo el comando de actualización.