Hi Manoel, Many thanks for your detailed answer and quick response! I've looked into using this but I don't think it will stop the root problem of GRUB loading the wrong grub.cfg file. Is there a way of using the 'search' command before GRUB has loaded a grub.cfg and therefore use the same command to look for the grub.cfg?
To reiterate, 1. If both eMMC and USB are connected and from the BIOS I choose to boot into the USB, I would expect the BIOS to load GRUB and GRUB to load the grub.cfg on the USB... And that is exactly what happens. However... 2. If both eMMC and USB are connected and from the BIOS I choose to boot into the eMMC I would expect the BIOS to load GRUB and GRUB to load the grub.cfg on the eMMC... Unfortunately the BIOS loads GRUB on the eMMC (correct) but GRUB loads the grub.cfg from the USB, not the eMMC. I would like to keep the two systems as separate as possible and let the BIOS choose which system to boot. Is this possible? Regards, Stuart >Date: Fri, 16 Oct 2015 22:54:51 +0000 >From: Manoel Rebelo Abranches <abranc...@gmail.com> >To: The development of GNU GRUB <grub-devel@gnu.org> >Subject: Re: disk/device enumeration within grub >Message-ID: > <CABUX+5up_BEC- >e9iYay3qa4K+boMvzK=dzunsvo41nctfp4...@mail.gmail.com> >Content-Type: text/plain; charset="utf-8" > >As stated in documentation >http://www.gnu.org/software/grub/manual/grub.html#Multi_002dboot- >manual-config >and >hilighted below, you should use UUID instead of the hdx. > >Argument to search after ?label is FS LABEL. You can also use UUIDs with ?fs- >uuid UUID instead of ?label LABEL. You could also use direct root=hd0,msdosX >but this is not recommended due to device name instability. > >Regards, >Manoel R. Abranches > >On Fri, Oct 16, 2015 at 11:00 AM Stuart Weaver ><stuart.wea...@datapath.co.uk> >wrote: > >> Hi all, >> >> >> >> My current setup is a device that has eMMC and occasionally a USB both >> with GRUB installed on them via Yocto. All are EFI on an x64 system. >> >> >> >> 1. When the USB is disconnected the device boots into the eMMC >> >> 2. When the USB is connected and chosen via the BIOS, the device >> boots into the USB >> >> 3. When the USB is connected and eMMC is chosen via the BIOS, GRUB >> is loaded from the eMMC (checked by deleting the bootx64.efi file on >> USB) but chooses the USB grub.cfg file and hence boots into USB >> >> 4. When USB boot is disabled in BIOS it will load GRUB from eMMC >> (checked by deleting the bootx64.efi file on USB) but chooses the USB >> grub.cfg file and hence boots into USB >> >> >> >> When I go to the grub commandline I can see that: >> >> >> >> 1. When USB is disconnected, eMMC appears as (hd0) >> >> 2. When USB is connected, USB appears as (hd0) and eMMC appears as >> (hd1) >> >> >> >> I?ve tried trawling the internet and documentation but can?t seem to >> find anything detailing how grub enumerates devices. Obviously I would >> like grub to look for the grub.cfg file from the device it booted from >> but can?t seem to find a solution at the moment! >> >> >> >> Could someone detail/point to the process of how grub does the >> enumeration (is the information passed through from the BIOS?) and >> whether USB booting can be blocked for the grub that is on the eMMC? >> >> >> >> Best Regards, >> >> Stuart >> >> >___________________________________________________________ >___________ >> This email has been scanned by the Symantec Email Security.cloud service. >> For more information please visit http://www.symanteccloud.com >> >___________________________________________________________ >___________ >> _______________________________________________ >> Grub-devel mailing list >> Grub-devel@gnu.org >> https://lists.gnu.org/mailman/listinfo/grub-devel >> ______________________________________________________________________ This email has been scanned by the Symantec Email Security.cloud service. For more information please visit http://www.symanteccloud.com ______________________________________________________________________ _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel