Question: I have a bunch of live ISO files like [GParted](https://gparted.org/livecd.php), [CloneZilla](https://clonezilla.org/downloads.php), [Boot-Repair](https://sourceforge.net/projects/boot-repair-cd/files/), [Ubuntu 14.04 32 bit](http://releases.ubuntu.com/16.04/ubuntu-16.04.4-desktop-i386.iso), ... downloaded in `/opt` and on my old BIOS machine, I used to be able to just add them to the grub menu and boot them. **:-)**

I now have an UEFI machine and all the information I can find are for BIOS machines.

*What are the steps to boot these ISO files from grub?* 

I'm just I'm sick and tired of "burning" these to a USB stick all the time as I can never find the stick I need whereas my computer itself if much harder to loose in the total chaos around me here...) **:-(**

Answer: 
An alternative is to just add a configfile to 40\_custom like this:

```
menuentry 'Live ISOs on SSD' {
configfile (hd0,3)/ISO/livecdimage.cfg
} 

menuentry 'Live ISOs on HDD (boot on SSD)' {
configfile (hd1,3)/ISO/livecdimage.cfg
} 

```

I do this as when I update an ISO, I invariably forget to run `sudo update-grub`. The above entries never have to change and I can just edit livecdimage.cfg which has the same format as any 40\_custom but without header lines, and is in my /ISO folder in my ISO partition.

I do add toram as another boot parameter and on the system with Nvidia add nomodeset boot parameter. But still often have to unmount the /isodevice.

Unable to umount isodevice unmount ISO
<https://bugs.launchpad.net/ubuntu/+source/ubiquity/+bug/1155216>

```
sudo umount -l -r -f /isodevice

```

And this is part of my livecdimage.cfg file

```
# livecdimage.cfg
# Add this to 40_custom to load this file:
# menuentry 'Live ISOs' {
# configfile (hd1,3)/iso/livecdimage.cfg
#} 
# Add iso names to livecdimage.cfg
#for i in `ls *.iso`;do echo "# "$i>>livecdimage.cfg; done;

menuentry "Ubuntu 16.04.4 xenial amd64" {
    set isofile="/ISO/ubuntu-16.04.4-desktop-amd64.iso"
    loopback loop (hd0,3)$isofile 
    linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile toram
    initrd (loop)/casper/initrd.lz
}

menuentry "Ubuntu 18.04 Bionic amd64" {
    set isofile="/ISO/bionic-desktop-amd64.iso"
    loopback loop (hd0,3)$isofile 
    linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile toram
    initrd (loop)/casper/initrd.lz
}

# spacer line
menuentry " " {
set root= 
}

menuentry "Reboot" {
    reboot
}

menuentry "Halt" {
    halt
}

```
**MultiBootUSB - QEMU**

If you want to boot ISO files with the least hassle and don't need persistence, MultiBootUSB includes a QEMU option:

* Start MultiBootUSB and select the Boot ISO/USB tab.
* Drag and drop the ISO on the Select image space.
* Select RAM size and hit the Boot ISO button.

You don't need to edit grub.cfg or even log out.

[![MultiBootUSB-QEMU](https://i.stack.imgur.com/3Yelp.png)](https://i.stack.imgur.com/3Yelp.png)