Hello Michael,

Le 18/02/2011 18:25, Michael Prokop a écrit :
> Can you please try adding the following code after line 36 to
> /etc/grub.d/42_grml:
>
>   $(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT}) | sed -e "s/^/        
> /")
>
> so /etc/grub.d/42_grml looks like:
>
> [...]
>   cat << EOF
> menuentry "${title}" {
> $(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/        /")
>         iso_path="${rel_dirname}/$grml $CUSTOM_BOOTOPTIONS"
> [...]
>
> If that works for you I'd apply this fix and upload a new version of
> grml-rescueboot.
>
>   

Your line had a typo (the first ")" has to be removed), then I can get
the Grml menu (I've joined my 42_grml file for reference).

> You can add debug=vc manually to the kernel cmdline in Grml's
> bootsplash or just select the debug menu entry if you want a more
> verbose boot mode.
>
> Notice that you don't need the forensic mode for this situation as
> Grml won't use your swap partition unless you explictely request to
> do so.
>   
Thanks for the precision.

I still have a problem booting Grml, but I don't see exaclty what is
wrong and how it can work for you ;-) my Grml booting problem is that
live system doesn't find the ISO, because of problem in kernel command
line :
I get a kernel command line (from my memory) like :
apm=power-off quiet ... iso="/boot/grml/grml64-medium_2010.12.iso " ...

The problem comes from the quotes around ISO path, as set in 42_grml :
iso_path="/boot/grml/grml64-medium_2010.12.iso "
(I don't at first set CUSTOM_BOOTOPTIONS, I then tried with some
options, with the same result)

I have to remove quotes in iso_path definition to be able to boot, then
in that case, I lose optional boot options set in CUSTOM_BOOTOPTIONS).

I've tried to understand how Grml's Grub menu works (with variables like
"${isoopts}" "${kernelopts}", i'm not sure about the first variable
name), but I don't understand where these variables are set, and how to
have a correct boot command with optional BOOTOPTIONS.

   Perhaps you'll have some ideas about this,

     with regards,
        Fred.

#!/bin/sh
# Filename:      42_grml
# Purpose:       grub-mkconfig helper script for Grml rescue systems
# Authors:       grml-team (grml.org), (c) Andreas Gredler <[email protected]>, 
Michael Prokop <[email protected]>
# Bug-Reports:   see http://grml.org/bugs/
# License:       This file is licensed under the GPL v2+.
################################################################################

set -e

prefix=/usr
exec_prefix=${prefix}
bindir=${exec_prefix}/bin
libdir=${exec_prefix}/lib
. ${libdir}/grub/grub-mkconfig_lib

# default unless configured otherwise:
ISO_LOCATION="/boot/grml"

if [ -r /etc/default/grml-rescueboot ] ; then
  . /etc/default/grml-rescueboot
fi

list=$(for i in "${ISO_LOCATION}"/*.iso ; do
         if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
       done)

for grmliso in $list ; do
  rel_dirname="$(make_system_path_relative_to_its_root $(dirname $grmliso))"
  grml="$(basename $grmliso)"

  echo "Found Grml ISO image: $grmliso" >&2
  title="Grml Rescue System ($grml)"

  cat << EOF
menuentry "${title}" {
 $(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/        /")
        iso_path="${rel_dirname}/$grml $CUSTOM_BOOTOPTIONS"
        export iso_path
        loopback loop "${rel_dirname}/$grml"
        set root=(loop)
        configfile /boot/grub/loopback.cfg
}
EOF
done

## END OF FILE #################################################################
_______________________________________________
Grml mailing list - [email protected]
http://lists.mur.at/mailman/listinfo/grml
join #grml on irc.freenode.org
grml-devel-blog: http://grml.supersized.org/

Reply via email to