|Subject:||Re: How does the grub efi know where to look for the grub.cfg?|
|Date:||Mon, 7 Mar 2016 09:05:24 -0700|
06.03.2016 18:34, Arjun Krishnan пишет:
> On Sat, Mar 5, 2016 at 10:35 PM, Andrei Borzenkov <address@hidden> wrote:
>> 05.03.2016 20:27, Arjun Krishnan пишет:
>>> I installed grub-efi using
>>> grub-install --efi-directory=/mnt/efi --boot-directory=/boot
>>> I did not specify a root partition anywhere (like you used to have to,
>>> when installing it to the mbr), so how does grub set its $root and
>> grub-install configures image so that it will look for disk where
>> /boot/grub is located at boot time and set $root and $prefix accordingly.
>>> So I looked at a dual booting system that has two efi grub
>>> installations, ubuntu and arch. It has a /efi/ubuntu directory that
>>> has a grubx64.efi file and a grub.cfg. This grub.cfg simply sets the
>> On EFI binary can query firmware for path it was loaded from. GRUB image
>> can be configured so that it will use this information as value of $prefix.
> This explains how GRUB finds the path it was loaded from, and hence
> the grub.cfg if it's in the path.
> But it doesn't explain the archlinux setup, where there is no
I answered this in previous sentence.
> Is it stored in the efi file?
No. It would make reconfiguring GRUB too difficult. When GRUB starts it
>>> correct prefix and root. I suppose the --efi-directory is used as a
>>> system root partition. However, inside /efi/arch I simply have a
>>> grubx64.efi. The root and prefix are nowhere to be found. I even when
>>> I tried to read the efi file in hex.
>>> How does the grubx64.efi on the arch side figure out the correct
>>> system root partition?
>>> Help-grub mailing list
|[Prev in Thread]||Current Thread||[Next in Thread]|