Howto: Install using an existing system and ISO - no burning needed

Preface

This post describes a simple way of using the EndeavourOS ISO file as-is (i.e. without burning) for installing EndeavourOS.

Assumptions:

  • You already have a working EndeavourOS install on the machine. Probably other distros work as well, but I’ve tested this idea only with EndeavourOS.
  • You’ll need another drive, e.g. a USB stick.

The problem

Sometimes you may have a reason to install another instance of EndeavourOS onto one of your disks. But for some reason the normal procedure of burning the ISO to a USB stick has problems with your system.
For example, burning the ISO to a USB stick does not work, or the USB port(s) are not working, etc.

A solution

What you can do is actually quite simple:

  1. Copy (e.g. with cp, no burning needed!) the ISO file onto the root folder of another disk, e.g. a USB stick.
  2. Write the following grub menu entry into file /boot/grub/custom.cfg as root user:
menuentry 'ISO - EndeavourOS Atlantis neo' {
    set isofile=/EndeavourOS_Atlantis_neo-21_5.iso
    search --no-floppy --set=root --file $isofile
    probe -u $root --set=uuid
    loopback loop $isofile
    linux (loop)/arch/boot/x86_64/vmlinuz-linux img_dev=/dev/disk/by-uuid/$uuid img_loop=$isofile
    initrd  (loop)/arch/boot/intel-ucode.img (loop)/arch/boot/x86_64/initramfs-linux.img
}

That’s mostly it! :sweat_smile:
Then simply reboot and see the new grub menu entry for the ISO!

Additional notes

  • If the name of the ISO file is different, modify the grub entry (the second line) accordingly.
  • This entry does not work with all older EndeavourOS ISOs, because they have a slightly different organization of the files inside the ISO.
  • I’ve tested this only on my few machines, so it is not guaranteed to work in every machine.

EDIT after 3h: some more additional notes:

  • An ISO can boot this way for maintenance purposes as well.
  • Note that installing to the same disk where booting occurred may not work.
10 Likes