Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bootup: "couldn't find a valid label" #2057

Closed
RJVB opened this issue Jan 17, 2014 · 4 comments
Closed

bootup: "couldn't find a valid label" #2057

RJVB opened this issue Jan 17, 2014 · 4 comments

Comments

@RJVB
Copy link

RJVB commented Jan 17, 2014

I modified one of my LinuxMintDebian-on-zfs set-ups yesterday. Its pool had an external mirror and because I didn't want the moral obligation to keep an external disk connected (it's a netbook), I decided to split its linux partition in 2and rebuild the pool using like so. The ext3 /boot partition was on sda7 where I left it:

$ zpool status -v
  pool: rpool
 state: ONLINE
  scan: resilvered 680K in 0h0m with 0 errors on Fri Jan 17 02:27:03 2014
config:

        NAME                                                  STATE     READ WRITE CKSUM
        rpool                                                 ONLINE       0     0     0
          mirror-0                                            ONLINE       0     0     0
            ata-WDC_WD3200BPVT-22JJ5T0_WD-WX81AA1M9437-part6  ONLINE       0     0     0
            ata-WDC_WD3200BPVT-22JJ5T0_WD-WX81AA1M9437-part8  ONLINE       0     0     0

errors: No known data errors

$ fdisk -l /dev/sda

Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x1e73b561

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048    29362175    14680064   27  Hidden NTFS WinRE
/dev/sda2        29362176    29566975      102400    7  HPFS/NTFS/exFAT
/dev/sda3        29566976   327354367   148893696    7  HPFS/NTFS/exFAT
/dev/sda4       327354368   625141759   148893696    5  Extended
/dev/sda5       327356416   347836415    10240000   82  Linux swap / Solaris
/dev/sda6       347838464   485441535    68801536   83  Linux
/dev/sda7   *   623046656   625141759     1047552   83  Linux
/dev/sda8       485443584   623044607    68800512   83  Linux

Partition table entries are not in disk order

I know that this kind of mirroring isn't the most protective (but it ought to protect more against bit-rot than no mirror at all) and I notice now that gparted finally did not give me 2 perfectly identical partitions (6 & 8), but that's not the point here (or so I hope).

I've been doing quite a bit of linux-on-zfs setting up lately, so I was confident that the most time-consuming in this operation would be the 2 send/receive operations to and fro an external disk.

Instead, I've been spending hours rebuilding the initramfs, grub.cfg and rebooting, and I cannot seem to get rid of that boot error

"could not find a valid label"

After a pause, the boot continues, and until I renamed my pool from Patux to the default, rpool, I had to import and mount it by hand for the boot to complete.

Initially, I saw messages about sda6 and sda7 not being found in device.map (which I don't have), I think during update-grub. This was after 1:30 in the morning, so sadly I didn't think to save them. This morning, I almost thought the cycle looked good, but a reboot still showed that dreaded warning and I decided to raise this issue.

This time I kept a log:

$ update-initramfs -u -k all
update-initramfs: Generating /boot/initrd.img-3.10.5-amd64-rjvb
cryptsetup: WARNING: could not determine root device from /etc/fstab
update-initramfs: Generating /boot/initrd.img-3.10-2-amd64
cryptsetup: WARNING: could not determine root device from /etc/fstab
update-initramfs: Generating /boot/initrd.img-3.8.13-amd64-xen+rtai-rjvb
cryptsetup: WARNING: could not determine root device from /etc/fstab
update-initramfs: Generating /boot/initrd.img-3.2.0-4-amd64
cryptsetup: WARNING: could not determine root device from /etc/fstab
574.448 user_cpu 58.624 kernel_cpu 13:32.06 total_time 77.9%CPU {0W 0X 0D 0K 96360M 5204F 6561536R 832704I 119472O 0r 0s 0k 79044w 130926c}

$ update-grub
Generating grub.cfg ...
Found background image: .background_cache.png
Found linux image: /boot/vmlinuz-3.10.5-amd64-rjvb
Found initrd image: /boot/initrd.img-3.10.5-amd64-rjvb
Found linux image: /boot/vmlinuz-3.10-2-amd64
Found initrd image: /boot/initrd.img-3.10-2-amd64
Found linux image: /boot/vmlinuz-3.8.13-amd64-xen+rtai-rjvb
Found initrd image: /boot/initrd.img-3.8.13-amd64-xen+rtai-rjvb
Found linux image: /boot/vmlinuz-3.2.0-4-amd64
Found initrd image: /boot/initrd.img-3.2.0-4-amd64
Found Windows Recovery Environment (loader) on /dev/sda1
Found Windows 7 (loader) on /dev/sda2
done

$ grub-install --recheck /dev/sda
Installation finished. No error reported.

grub.cfg looks like this:

#
# 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
  set have_grubenv=true
  load_env
fi
set default="Windows 7 (loader) (on /dev/sda2)"

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

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 {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
else
  search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
fi
    font="/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=en_GB
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
  set timeout=-1
else
  set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
else
  search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
fi
insmod png
if background_image /grub/.background_cache.png; then
  set color_normal=white/black
  set color_highlight=black/white
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/06_mint_theme ###
set menu_color_normal=white/black
set menu_color_highlight=white/light-gray
### END /etc/grub.d/06_mint_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
    set gfxpayload="${1}"
}
set linux_gfx_mode=
export linux_gfx_mode
menuentry 'LinuxMint GNU/Linux' --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-/dev/sda6
/dev/sda8' {
    load_video
    insmod gzio
    insmod zfsinfo
    zfs-bootfs ($root) bootfs
    insmod part_msdos
    insmod ext2
    set root='hd0,msdos7'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
    else
      search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
    fi
    linux   /vmlinuz-3.10.5-amd64-rjvb root=ZFS=/ ro boot=zfs $bootfs   
    initrd  /initrd.img-3.10.5-amd64-rjvb
}
submenu 'Advanced options for LinuxMint GNU/Linux' $menuentry_id_option 'gnulinux-advanced-/dev/sda6
/dev/sda8' {
    menuentry 'LinuxMint GNU/Linux, with Linux 3.10.5-amd64-rjvb' --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.10.5-amd64-rjvb-advanced-/dev/sda6
    /dev/sda8' {
        load_video
        insmod gzio
        insmod zfsinfo
        zfs-bootfs ($root) bootfs
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos7'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
        else
          search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
        fi
        echo    'Loading Linux 3.10.5-amd64-rjvb ...'
        linux   /vmlinuz-3.10.5-amd64-rjvb root=ZFS=/ ro boot=zfs $bootfs   
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.10.5-amd64-rjvb
    }
    menuentry 'LinuxMint GNU/Linux, with Linux 3.10.5-amd64-rjvb (recovery mode)' --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.10.5-amd64-rjvb-recovery-/dev/sda6
    /dev/sda8' {
        load_video
        insmod gzio
        insmod zfsinfo
        zfs-bootfs ($root) bootfs
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos7'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
        else
          search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
        fi
        echo    'Loading Linux 3.10.5-amd64-rjvb ...'
        linux   /vmlinuz-3.10.5-amd64-rjvb root=ZFS=/ ro single boot=zfs $bootfs 
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.10.5-amd64-rjvb
    }
    menuentry 'LinuxMint GNU/Linux, with Linux 3.10-2-amd64' --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.10-2-amd64-advanced-/dev/sda6
    /dev/sda8' {
        load_video
        insmod gzio
        insmod zfsinfo
        zfs-bootfs ($root) bootfs
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos7'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
        else
          search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
        fi
        echo    'Loading Linux 3.10-2-amd64 ...'
        linux   /vmlinuz-3.10-2-amd64 root=ZFS=/ ro boot=zfs $bootfs   
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.10-2-amd64
    }
    menuentry 'LinuxMint GNU/Linux, with Linux 3.10-2-amd64 (recovery mode)' --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.10-2-amd64-recovery-/dev/sda6
    /dev/sda8' {
        load_video
        insmod gzio
        insmod zfsinfo
        zfs-bootfs ($root) bootfs
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos7'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
        else
          search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
        fi
        echo    'Loading Linux 3.10-2-amd64 ...'
        linux   /vmlinuz-3.10-2-amd64 root=ZFS=/ ro single boot=zfs $bootfs 
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.10-2-amd64
    }
    menuentry 'LinuxMint GNU/Linux, with Linux 3.8.13-amd64-xen+rtai-rjvb' --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.8.13-amd64-xen+rtai-rjvb-advanced-/dev/sda6
    /dev/sda8' {
        load_video
        insmod gzio
        insmod zfsinfo
        zfs-bootfs ($root) bootfs
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos7'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
        else
          search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
        fi
        echo    'Loading Linux 3.8.13-amd64-xen+rtai-rjvb ...'
        linux   /vmlinuz-3.8.13-amd64-xen+rtai-rjvb root=ZFS=/ ro boot=zfs $bootfs   
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.8.13-amd64-xen+rtai-rjvb
    }
    menuentry 'LinuxMint GNU/Linux, with Linux 3.8.13-amd64-xen+rtai-rjvb (recovery mode)' --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.8.13-amd64-xen+rtai-rjvb-recovery-/dev/sda6
    /dev/sda8' {
        load_video
        insmod gzio
        insmod zfsinfo
        zfs-bootfs ($root) bootfs
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos7'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
        else
          search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
        fi
        echo    'Loading Linux 3.8.13-amd64-xen+rtai-rjvb ...'
        linux   /vmlinuz-3.8.13-amd64-xen+rtai-rjvb root=ZFS=/ ro single boot=zfs $bootfs 
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.8.13-amd64-xen+rtai-rjvb
    }
    menuentry 'LinuxMint GNU/Linux, with Linux 3.2.0-4-amd64' --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.2.0-4-amd64-advanced-/dev/sda6
    /dev/sda8' {
        load_video
        insmod gzio
        insmod zfsinfo
        zfs-bootfs ($root) bootfs
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos7'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
        else
          search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
        fi
        echo    'Loading Linux 3.2.0-4-amd64 ...'
        linux   /vmlinuz-3.2.0-4-amd64 root=ZFS=/ ro boot=zfs $bootfs   
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.2.0-4-amd64
    }
    menuentry 'LinuxMint GNU/Linux, with Linux 3.2.0-4-amd64 (recovery mode)' --class linuxmint --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.2.0-4-amd64-recovery-/dev/sda6
    /dev/sda8' {
        load_video
        insmod gzio
        insmod zfsinfo
        zfs-bootfs ($root) bootfs
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos7'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
        else
          search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
        fi
        echo    'Loading Linux 3.2.0-4-amd64 ...'
        linux   /vmlinuz-3.2.0-4-amd64 root=ZFS=/ ro single boot=zfs $bootfs 
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.2.0-4-amd64
    }
}

### 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 ###
menuentry 'Windows Recovery Environment (loader) (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-68C25524C254F7B0' {
    insmod part_msdos
    insmod ntfs
    set root='hd0,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  68C25524C254F7B0
    else
      search --no-floppy --fs-uuid --set=root 68C25524C254F7B0
    fi
    drivemap -s (hd0) ${root}
    chainloader +1
}
menuentry 'Windows 7 (loader) (on /dev/sda2)' --class windows --class os $menuentry_id_option 'osprober-chain-EA8655BD86558B49' {
    insmod part_msdos
    insmod ntfs
    set root='hd0,msdos2'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2  EA8655BD86558B49
    else
      search --no-floppy --fs-uuid --set=root EA8655BD86558B49
    fi
    chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

### 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  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

So what is that label that's not being found as the first thing during the boot process after I selected the desired grub entry? Why is it that I could boot with my pool name of choice (and still can on my other set-up, rebuilt no later than last Monday, with a copy of this netbook's pool?)
Could it be the fact that there's a newline in the -class os $menuentry_id_option?

Is there anything else I'd have to upload to diagnose this issue?

@RJVB
Copy link
Author

RJVB commented Jan 17, 2014

Addendum: there does seem to be an issue with grub, in how it handles mirrored pools.

I split rpool, which gave me a pool on only ata-WDC_WD3200BPVT-22JJ5T0_WD-WX81AA1M9437-part6, ran update-grub; grub-install and reboot.
Result, the system rebooted fine.

The pool is now resilvering after I added back ata-WDC_WD3200BPVT-22JJ5T0_WD-WX81AA1M9437-part8 to it, I will report back if rebooting with it gives a new issue. I have no reason to expect it will ...

...

as long as I don't (have to) rebuild grub.cfg !

@RJVB
Copy link
Author

RJVB commented Jan 18, 2014

Compar:

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
else
  search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
fi
    font="/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=en_GB
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
  set timeout=-1
else
  set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  39ff79e1-e153-490f-b302-4ba8e71fe643
else
  search --no-floppy --fs-uuid --set=root 39ff79e1-e153-490f-b302-4ba8e71fe643
fi
insmod png
if background_image /grub/.background_cache.png; then
  set color_normal=white/black
  set color_highlight=black/white
else
  set menu_color_normal=cyan/blue
  set menu_color_highlight=white/blue
fi
### END /etc/grub.d/05_debian_theme ###

with

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos
insmod zfs
set root='hd0,msdos6'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6  f97c41755c6bece7
else
  search --no-floppy --fs-uuid --set=root f97c41755c6bece7
fi
    font="/@/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=en_GB
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
  set timeout=-1
else
  set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_msdos
insmod zfs
set root='hd0,msdos6'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6  f97c41755c6bece7
else
  search --no-floppy --fs-uuid --set=root f97c41755c6bece7
fi
insmod png
if background_image /@/usr/share/images/desktop-base/joy-grub.png; then
  set color_normal=white/black
  set color_highlight=black/white
else
  set menu_color_normal=cyan/blue
  set menu_color_highlight=white/blue
fi
### END /etc/grub.d/05_debian_theme ###

The former is an extract from grub.cfg generated when update-grub is run with a mirrored pool, the latter with a pool without redundancy. Note how the former grub.cfg sets the root to the /boot partition, while the latter sets it to the zfs partition, referenced through its guid (took me a while to figure out that one :) )

@FransUrbo
Copy link
Contributor

@RJVB This is not an issue with ZoL. Please move this to https://github.com/zfsonlinux/grub.

@behlendorf
Copy link
Contributor

Closing, it was migrated to zfsonlinux/grub#13.

@behlendorf behlendorf modified the milestone: 0.6.7 Nov 8, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants