You are not logged in.

#1 2014-12-12 16:37:42

starfry
Member
From: Surrey, UK
Registered: 2010-08-18
Posts: 233

Booting Arch iso from USB via Grub fails when launched from a submenu

I am trying to boot the Arch iso from Grub2 on a multiboot USB stick. I begin with a working Grub configuration, as shown below:

set imgdevpath='/dev/disk/by-uuid/947be105-1583-48ef-b566-d4e00a47f682'
function boot_archlinux {
        arch=$1
        shift
        set y=2014
        set m=12
        set d=01
        set isofile="/iso/archlinux-${y}.${m}.${d}-dual.iso"
        echo "Booting $isofile for $arch $*" 
        loopback loop $isofile
        linux (loop)/arch/boot/$arch/vmlinuz archisolabel=ARCH_${y}${m} img_dev=$imgdevpath img_loop=$isofile earlymodules=loop "$@"
        initrd (loop)/arch/boot/$arch/archiso.img
}
menuentry 'Arch Linux i686 (no kms)'   { boot_archlinux i686 nomodeset }

This works fine on my test machine. However if I put the menuentry into a submenu, that is to replace the above menuentry with the below, it doesn't boot.

submenu 'Arch Linux' {
    menuentry 'Arch Linux i686 (no kms)'   { boot_archlinux i686 nomodeset }
}

The boot process starts but fails when trying to mount the iso (/dev/disk/by-label-ARCH_201412) which doesn't get set up and a 30 second timeout occurs. If I manually mount the iso then the boot process continues without issue.

I am at a loss as to what the issue is, as all I did was enclose the Grub menu item in a submenu. Any ideas?

Offline

Board footer

Powered by FluxBB