[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

"standard" for loop bootable iso images.

From: Jordan Uggla
Subject: "standard" for loop bootable iso images.
Date: Sun, 11 Apr 2010 15:08:30 -0700

Super GRUB2 disk 1.98s1 will include an option that will look for loop
bootable iso files in /boot-isos/ on all devices and, for supported
distributions, present a menu allowing you to boot from them.
Currently the lua script that does this has to search for specific
files on the iso to try to guess the distribution, and from there uses
distribution-specific hard coded paths and kernel parameters. This is
sub-optimal for many reasons, among them that new distributions need
to be added to the script manually and even old ones may need updating
for newer versions of the distribution. (This was the case for grml.)

On the supergrub mailing list I proposed that distributions include a
loopback.cfg, which would be a regular grub.cfg with the addition of
extra kernel parameters needed to loop mount the iso file. To boot
such an iso from grub you would loop mount the iso, set
root=(loop-device), export a variable $iso_path with the path to the
iso file, and then "configfile /boot/grub/loopback.cfg". You then get
the distribution's full, up to date, list of options, and no
special-casing of distributions is required.

Creating a suitable loopback.cfg is fairly easy, especially if the
live distribution already uses grub2.  As an example, here is a commit
modifying grml's grub.cfg so that it can be used normally or as a
loopback.cfg (so they only have to maintain one file):

Adrian responded to my proposal pointing me to and suggesting I ask here if there had
been any progress with that idea. That post suggests having a
multiboot bootloader on the iso, passing the iso path to the
bootloader via the multiboot cmdline.

Any comments on either proposal, or an entirely different one, are
welcome and encouraged.

Jordan Uggla (Jordan_U on

reply via email to

[Prev in Thread] Current Thread [Next in Thread]