Bug#614023: grub-common: /etc/grub.d/30_os-prober sets invalid boot device for the Hurd
Adrian Glaubitz
glaubitz at physik.fu-berlin.de
Mon Mar 28 12:49:14 UTC 2011
On Mon, Mar 28, 2011 at 02:27:57PM +0200, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
> On 28.03.2011 13:56, Adrian Glaubitz wrote:
> > Hi Vladimir,
> >
> > On Mar 28, 2011, at 5:27 AM, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
> >> Fixed upstream by r2627.
> >>
> > Thanks a lot for fixing that bug!
> >
> >
> All thanks go to Samuel.
True. Realized that in the moment I sent the email =). Thanks to
Samuel then!
> >> Note however that the device name is just an
> >> educated guess. GNU/Mach should support UUIDs.
> >>
> > In fact, GNU/Mach already supports UUIDs and it is also used for the Hurd
> > installation ISO images hosted by Samuel Thibault [1]. This Hurd version uses
> > GRUB2 as well without any problems.
> >
> >
> I didn't see any UUIDs in 10_hurd.in. It seems that it actually just
> reuses the device name which is already mounted at /. Can you give an
> example of UUID-base grub.cfg?
Sure, I'm attaching the grub.cfg of my current Debian GNU/Hurd
installation which was installed with the aforementioned images hosted
by Samuel.
Regards,
Adrian
-------------- next part --------------
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
}
insmod part_msdos
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set a72a25e0-3ea8-11e0-8592-5254003da1d3
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
load_video
insmod gfxterm
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set a72a25e0-3ea8-11e0-8592-5254003da1d3
set locale_dir=($root)/boot/grub/locale
set lang=
insmod gettext
set timeout=5
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_hurd ###
menuentry "Debian GNU/Hurd using gnumach-1.3.99-486.gz" --class debian --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set a72a25e0-3ea8-11e0-8592-5254003da1d3
echo 'Loading GNU Mach ...'
multiboot /boot/gnumach-1.3.99-486.gz root=device:hd0s1
insmod part_msdos
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set a72a25e0-3ea8-11e0-8592-5254003da1d3
echo 'Loading the Hurd ...'
module /hurd/ext2fs.static ext2fs --readonly \
--multiboot-command-line='${kernel-command-line}' \
--host-priv-port='${host-port}' \
--device-master-port='${device-port}' \
--exec-server-task='${exec-task}' -T typed '${root}' \
'$(task-create)' '$(task-resume)'
module /lib/ld.so.1 exec /hurd/exec '$(exec-task=task-create)'
}
menuentry "Debian GNU/Hurd using gnumach-1.3.99-486.gz (recovery mode)" --class debian --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set a72a25e0-3ea8-11e0-8592-5254003da1d3
echo 'Loading GNU Mach ...'
multiboot /boot/gnumach-1.3.99-486.gz root=device:hd0s1 -s
insmod part_msdos
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set a72a25e0-3ea8-11e0-8592-5254003da1d3
echo 'Loading the Hurd ...'
module /hurd/ext2fs.static ext2fs \
--multiboot-command-line='${kernel-command-line}' \
--host-priv-port='${host-port}' \
--device-master-port='${device-port}' \
--exec-server-task='${exec-task}' -T typed '${root}' \
'$(task-create)' '$(task-resume)'
module /lib/ld.so.1 exec /hurd/exec '$(exec-task=task-create)'
}
### END /etc/grub.d/10_hurd ###
### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
More information about the Pkg-grub-devel
mailing list