Grub2 instala en lo que se conoce como la primera etapa, una pequeña imagen en el MBR o bien en la partición BIOS boot / EFI System,.. etc En esta primera etapa el cargador de arranque intentará ejecutar la segunda etapa, la cual nos muestra un menú con los sistemas disponibles para arrancar, pero para ello deber ir a la partición correspondiente y buscar “/boot/grub/grub.conf” entre otras cosas.
Con el comando “grub-mkrescue” es posible crear una imagen iso con esas dos etapas embebidas, de forma que si se puede usar como backup de nuestro grub o bien como disco de rescate (normalmente usando la shell de grub2 para cargar un fichero “grub.conf” en particular y arrancar el sistema).
Básicamente se trata de copiar nuestro actual directorio /boot/grub para generar una imagen iso. Copiar el directorio /boot/grub entero no es realmente necesario, ni siquiera hace falta agregar un fichero grub.conf ya que con la linea de comandos de grub se puede hacer todo, pero el menú nos puede facilitar la vida si el disco de rescate se usará mayormente en nuestro sistema particular.
Dependencia: xorriso (Suele encontrarse en los repositorios.)
mkdir -p rescate/boot cp /boot/grub/ rescate/boot/ # La opción "-d" puede ser obligatorio dependiendo de la versión de Grub2 en uso. grub-mkrescue -d /usr/lib/grub/i386-pc/ -o rescue.iso rescate xorriso 1.4.2 : RockRidge filesystem manipulator, libburnia project. Drive current: -outdev 'stdio:rescue.iso' Media current: stdio file, overwriteable Media status : is blank Media summary: 0 sessions, 0 data blocks, 0 data, 77.9g free Added to ISO image: directory '/'='/tmp/grub.mJtq4N' xorriso : UPDATE : 345 files added in 1 seconds Added to ISO image: directory '/'='/home/marta/rescate' xorriso : UPDATE : 692 files added in 1 seconds xorriso : NOTE : Copying to System Area: 512 bytes from file '/usr/lib/grub/i386-pc/boot_hybrid.img' ISO image produced: 10948 sectors Written to medium : 10948 sectors at LBA 0 Writing to 'stdio:rescue.iso' completed successfully.
Ya se tiene la imagen “rescue.iso” con las dos etapas del grub disponibles. Se puede copiar a un CD o bien pasarlo a un USB o cualquier otro medio como una tarjeta SD.
dd bs=4M if=rescue.iso of=/dev/sdc
Comandos básicos para el arrancando de un sistema desde un disco de rescate de Grub2.
Típicos problemas a la hora de crear un disco de rescate de Grub2.
La opción “-d” en el caso del ejemplo soluciona estas salidas de error.
xorriso 1.4.2 : RockRidge filesystem manipulator, libburnia project. Drive current: -outdev 'stdio:rescue.iso' Media current: stdio file, overwriteable Media status : is blank Media summary: 0 sessions, 0 data blocks, 0 data, 77.9g free Added to ISO image: directory '/'='/tmp/grub.mJtq4N' xorriso : FAILURE : Cannot find path '/XXX.img' in loaded ISO image xorriso : UPDATE : 877 files added in 1 seconds xorriso : aborting : -abort_on 'FAILURE' encountered 'FAILURE'
Si no se ha instalado xorriso como dependencia posiblemente se muestre un error similar a este.
grub-mkrescue: warning: Your xorriso doesn't support `--grub2-boot-info'. Some features are disabled. Please use xorriso 1.2.9 or later..