
Entonces tengo un archivo .img completamente funcional creado usando grub-mkstandalone. Puse esto en un CD y arranca bien, el ISO se carga muy bien en una máquina virtual, etc.
Ahora, lo que quiero hacer es vincular un grub.cfg existente a este archivo .img como si fuera un inicio normal. ¿Tiene sentido? Así, por ejemplo, tengo un pendrive USB con grub instalado. Tengo varios dispositivos de bucle configurados para arrancar ISO. Todo Linux. Sin embargo, en este caso quiero cargar el archivo .img (que tiene su propio grub.cfg). Entonces, me gustaría ver el menú de ese grub.cfg una vez que se cargue el .img y luego iniciar el sistema operativo desde allí.
He estado buscando la respuesta durante días y leyendo la documentación pero no pude encontrar la respuesta.
Déjame saber si la pregunta no quedó clara y te la aclararé. Gracias de antemano.
EDITAR:
Entonces, por ejemplo, digamos que tengo esta entrada de menú:
menuentry 'My OS' {
set isofile="/iso/os_5.1.1_amd64.iso"
loopback loop (hd0,msdos1)$isofile
linux (loop)/vmlinuz boot=live toram nomodeset
initrd (loop)/initrd
}
Esto funciona bien. Sin embargo, quiero cargar el archivo .img que creé en lugar de cargar Linux de esta manera para poder ver el menú de grub que está dentro de la ISO.
¿Entonces algo como esto?
menuentry 'My OS' {
set isofile="/iso/os_5.1.1_amd64.iso"
loopback loop (hd0,msdos1)$isofile
.... (loop)/boot/grub/my.img
}
Los puntos representan algo de magia que no conozco para que esto funcione (si es que es posible).
Respuesta1
Para imágenes EFI, puedes usar chainloader
(pero sospecho que estabas usando BIOS en ese momento; no sé si funciona para eso):
menuentry 'My OS' {
chainloader (hd0,msdos1)/BOOT/EFI/somedir/somebin.efi
}
Entonces, lo habría intentado (¡¡sin probar!!):
menuentry 'My OS' {
set isofile="/iso/os_5.1.1_amd64.iso"
loopback loop (hd0,msdos1)$isofile
chainloader (loop)/boot/grub/my.img
}