• Agregar una entrada de grub para bootear una ISO Live de Ubuntu

    Guardamos la ISO de Ubuntu Live que queramos bootear en una carpeta de alguna partición ext4, fat32 o NTFS. Yo la voy a guardar en la carpeta /ISOs de la propia partición ext4 de Debian.

    Creamos o modificamos el archivo /etc/grub.d/40_custom y dentro agregamos:

    menuentry "ISO de Ubuntu" {
      insmod ext2
      set isofile="/ISOs/ubuntu-22.04-desktop-amd64.iso"
      loopback loop (hd0,5)$isofile
      linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile quiet noeject noprompt splash
      initrd (loop)/casper/initrd
    }

    insmod ext2 carga el módulo para manejar particiones ext4. Si el archivo estuviera en ntfs, esa línea sería insmod ntfs.

    set isofile indica la ruta hasta el archivo desde la ubicación de la partición donde está instalado grub.

    loopback monta el iso. hd0 es el primer disco duro y 5 significa que el archivo ISO será almacenada en la 5ta partición de ese disco. Si se quiere guardar en una partición extendida, la partición extendida en si será la quinta particion, y la primera partición de dentro de la partición extendida será la número 6.

    linux carga el kernel que especifiquemos en la ruta inmediatamente posterior. En este caso la ruta que le damos es /casper/vmlinuz.efi, que es la ruta del kernel de dentro del archivo iso.

    initrd carga en RAM el ramdisk que especifiquemos en la ruta inmediatamente posterior. En este caso la ruta donde está en ramdisk es /casper/initrd del archivo ISO. Pero ATENTO, sólo se puede cargar DESPUÉS de que se ha cargado el kernel que indicamos en la línea inmediatamente anterior.

    Nota 1: Para indicar hd0, hd1, etc, si tienes muchos discos, ten en cuenta que se numeran en este orden:

    1. Discos ópticos
    2. Discos USB
    3. IDE
    4. SATA
    5. NVMe

    Nota 2: Si tienes una partición que ocupa todo el disco, no hace falta indicar el número de partición en grub. Con especificar hd0 o hd1 bastaría.