Package: grub-ieee1275 Version: 1.98+20100804-4 Severity: important Tags: patch
a standard powerpc mac mini is unable to boot with grub after running grub-install /dev/hda (the machine's only disk uses an apple partitioning scheme, with an HFS volume as (hd,apple2) mounted at /boot/grub) during boot drops into an emergency rescue, saying: Welcome to GRUB! error: no device is set. Entering rescue mode... If i say: set prefix=(hd,apple2)/ insmod normal normal then everything boots as expected. it looks like grub-install isn't passing a --prefix option to grub-mkimage. Re-running /usr/sbin/grub-install /dev/hda with the attached patch applied makes it so that this ugly workaround is no longer necessary. Thanks for keeping grub in debian! --dkg -- Package-specific info: *********************** BEGIN /proc/mounts /dev/mapper/vg_faith0-root / ext3 rw,relatime,errors=remount-ro,commit=5,data=ordered 0 0 /dev/mapper/vg_faith0-home /home ext3 rw,relatime,errors=continue,commit=5,data=ordered 0 0 /dev/mapper/vg_faith0-tmp /tmp ext3 rw,relatime,errors=continue,commit=5,data=ordered 0 0 /dev/mapper/vg_faith0-usr /usr ext3 rw,relatime,errors=continue,commit=5,data=ordered 0 0 /dev/mapper/vg_faith0-var /var ext3 rw,relatime,errors=continue,commit=5,data=ordered 0 0 /dev/hda3 /boot ext3 rw,nosuid,nodev,noexec,relatime,errors=continue,commit=5,data=ordered 0 0 /dev/hda2 /boot/grub hfs rw,nosuid,nodev,noexec,relatime,uid=0,gid=0 0 0 *********************** END /proc/mounts *********************** BEGIN /boot/grub/device.map (hd) /dev/disk/by-id/ata-ST940110A_3KW5FGZX *********************** END /boot/grub/device.map *********************** BEGIN /boot/grub/grub.cfg # # 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 ieee1275_fb } insmod lvm insmod part_apple insmod ext2 set root='(vg_faith0-usr)' search --no-floppy --fs-uuid --set 5944e2ad-2ea9-4c59-a058-9b9fe5ff4d57 if loadfont /share/grub/unicode.pf2 ; then set gfxmode=640x480 load_video insmod gfxterm fi terminal_output gfxterm set timeout=5 ### END /etc/grub.d/00_header ### ### BEGIN /etc/grub.d/05_debian_theme ### insmod lvm insmod part_apple insmod ext2 set root='(vg_faith0-usr)' search --no-floppy --fs-uuid --set 5944e2ad-2ea9-4c59-a058-9b9fe5ff4d57 insmod png if background_image /share/images/desktop-base/moreblue-orbit-grub.png ; then set color_normal=black/black set color_highlight=magenta/black else set menu_color_normal=cyan/blue set menu_color_highlight=white/blue fi ### END /etc/grub.d/05_debian_theme ### ### BEGIN /etc/grub.d/10_linux ### menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-powerpc' --class debian --class gnu-linux --class gnu --class os { insmod part_apple insmod ext2 set root='(hd,apple3)' search --no-floppy --fs-uuid --set 217d06ca-b92e-4b8b-9519-efed0b1368f0 echo 'Loading Linux 2.6.32-5-powerpc ...' linux /vmlinux-2.6.32-5-powerpc root=/dev/mapper/vg_faith0-root ro quiet echo 'Loading initial ramdisk ...' initrd /initrd.img-2.6.32-5-powerpc } menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-powerpc (recovery mode)' --class debian --class gnu-linux --class gnu --class os { insmod part_apple insmod ext2 set root='(hd,apple3)' search --no-floppy --fs-uuid --set 217d06ca-b92e-4b8b-9519-efed0b1368f0 echo 'Loading Linux 2.6.32-5-powerpc ...' linux /vmlinux-2.6.32-5-powerpc root=/dev/mapper/vg_faith0-root ro single echo 'Loading initial ramdisk ...' initrd /initrd.img-2.6.32-5-powerpc } ### END /etc/grub.d/10_linux ### ### BEGIN /etc/grub.d/20_linux_xen ### ### END /etc/grub.d/20_linux_xen ### ### 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 ### *********************** END /boot/grub/grub.cfg -- System Information: Debian Release: squeeze/sid APT prefers testing APT policy: (500, 'testing') Architecture: powerpc (ppc) Kernel: Linux 2.6.32-5-powerpc Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages grub-ieee1275 depends on: ii bc 1.06.95-2 The GNU bc arbitrary precision cal ii debconf [debconf-2.0] 1.5.35 Debian configuration management sy ii grub-common 1.98+20100804-4 GRand Unified Bootloader, version ii powerpc-ibm-utils 1.1.0-1 utilities for maintenance of IBM P ii powerpc-utils 1.1.3-24 Various utilities for Linux/PowerP ii ucf 3.0025+nmu1 Update Configuration File: preserv grub-ieee1275 recommends no packages. Versions of packages grub-ieee1275 suggests: ii genisoimage 9:1.1.10-1 Creates ISO-9660 CD-ROM filesystem ii os-prober 1.39 utility to detect other OSes on a -- debconf information excluded
--- /usr/sbin/grub-install 2010-08-23 08:23:50.000000000 -0400 +++ /usr/sbin/grub-install.new 2010-09-20 11:47:30.000000000 -0400 @@ -222,7 +222,7 @@ modules="$modules $fs_module $partmap_module $devabstraction_module" # Now perform the installation. -"$grub_mkimage" -O ${target_cpu}-ieee1275 --directory=${pkglibdir} --output=${grubdir}/grub $modules || exit 1 +"$grub_mkimage" -O ${target_cpu}-ieee1275 --directory=${pkglibdir} --output=${grubdir}/grub --prefix=${prefix_drive}${relative_grubdir} $modules || exit 1 if test $update_nvram = yes; then set $ofpathname dummy