Discussion:
[Grml] Booting grml from the iso file itself
Arbiel Perlacremaz
2012-02-17 23:53:18 UTC
Permalink
Hi

I downloaded grml96_2011.12.iso and I would be glad to boot this file
without having to burn a CD or to write it down to a USB stick.

I've already done this for Ubuntu distros and for Clonezilla, and I
found it very helpful.

I've been through the iso file to look for the grub.cfg file and I found
out that I could write a little grub.cfg file of my own to launch
grub.cfg which resides in the iso file. I got the menu generated by the
following lines

for config in /boot/grub/*_default.cfg ; do source "$config" ; done
for config in /boot/grub/*_options.cfg ; do source "$config" ; done
source /boot/grub/addons.cfg

and I choose the first entry, grml32. The boot process than proceded
until I got an error message stating that

BOOT failed
grml32 2011.12 Release Codename Knecht Rootrecht [2011-12-23]

And the explanation was

Unable to find a medium containing a live file system.

I suppose this message results from the fact that I've not been able to
correctly set the iso_path and the kernelopts variables which are used
as parameters of the linux command of the menuentry command.

The grub.cfg file I wrote contains the following commands

function iso_virtuel {
search --file --set=root --no-floppy /${2}
loopback iso ${1}${2}
}

menuentry 'grmliso' {
iso_virtuel / "grml96_2011.12.iso"
set root=(iso)
set iso_path=(iso)
configfile /boot/grub/grub.cfg
}

Thank's in advance to anybody would could provide me with some piece of
advice.

Arbiel
Ulrich Dangel
2012-02-18 00:06:52 UTC
Permalink
Post by Arbiel Perlacremaz
I downloaded grml96_2011.12.iso and I would be glad to boot this
file without having to burn a CD or to write it down to a USB stick.
function iso_virtuel {
search --file --set=root --no-floppy /${2}
loopback iso ${1}${2}
}
menuentry 'grmliso' {
iso_virtuel / "grml96_2011.12.iso"
set root=(iso)
set iso_path=(iso)
configfile /boot/grub/grub.cfg
}
The problem is probably that you have to export the iso path otherwise
the exported values won't be availabe in the other grub configs. This
means you have to add export iso_path to your menu entry.

There are other small issues you should also be aware of:

1) You should use loopback.cfg instead of grub.cfg as loopback.cfg is a
more standardized way e.g. ubuntu also supports loobpack.cfg
2) The released grml96 iso image has a wrong grub config (i think you
only can boot either grml64 or grml32). You should generate your own
grub config with the current grml2usb itself.

Ulrich
Michael Prokop
2012-02-18 06:55:45 UTC
Permalink
Post by Ulrich Dangel
2) The released grml96 iso image has a wrong grub config (i think you
only can boot either grml64 or grml32). You should generate your own
grub config with the current grml2usb itself.
Yeah, it's http://bts.grml.org/grml/issue1134
and already fixed in the daily ISOs and for the upcoming stable
release.

JFYI

regards,
-mika-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://ml.grml.org/pipermail/grml/attachments/20120218/10881232/attachment.pgp>
Loading...