1

I'm trying to figure out an universal solution to have a multi-boot usb memory stick. I have some ISO images like: knoppix, debian, ubuntu, etc.

Is there any way to do the following procedure:

  1. List item
  2. load a micro kernel/bootloader from bootable memory stick into RAM
  3. load the most necessary modules to mount filesystem, iso, etc.
  4. boot directly from that iso.

I know that there are several solutions I've found but non of them are universal:

  1. grub4dos can load the whole image to ram and then boot it. -> it's ok if the image is small, but if it has e.g. 4 GB of RAM than we should have at least 6-8GB to work properly.
  2. grub2 can boot from iso, but we need to know exactly what's the syslinux parameters. This is an example configuration of grub.cfg that I've prepared for my Knoppix ISO:

    menuentry "Knoppix" {
    set isofile="/boot/iso/knoppix.iso"
    echo "Loading kernel.."
    loopback loop $isofile
    linux (loop)/boot/isolinux/linux64 boot=casper iso-scan/filename=$isofile ramdisk_size=100000 lang=en vt.default_utf8=0 acpi=off apm=power-off vga=791 nomce fromiso=$isofile noeject noprompt --
    echo "Loading modified initrd.."
    initrd (loop)/boot/isolinux/minirt.gz
    

    }

The problem is that after kernel boots, the init process can not find the mounted files even if they are exist on my loopback mounted iso.

I was able to boot successfully some of my ISOs but that's not universal way. Sometimes it fails.

And what about Windows installer. Let say some of my friends who don't have any CD/DVD device want me to reinstall the system. Can I do that with the similar way? Honestly I would probably solve that problem few years ago, but I've been working on Linux platform for many years and have contact with Windows-es only at work.

1

1 Answer 1

1

There are a few options listed on PendriveLinux, XBOOT, YUMI and SARDU, run under Windows and MultiSystem runs under Linux.

I've not used it myself but SARDU can apparently be used for the Windows Installer too.

You must log in to answer this question.