grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Questions regarding bzr Install Branch


From: Seth Goldberg
Subject: Re: Questions regarding bzr Install Branch
Date: Sat, 4 Sep 2010 10:59:35 -0700

Hi,

  Great question-- the answer is: this will be very OS-specific.

  --S

On Sep 4, 2010, at 2:27 AM, "KESHAV P.R." <address@hidden> wrote:

> How to detect whether a system has booted using (U)EFI and if so what
> is the efi processor arch? This is not only for the grub-install
> script but also the configure script.
> 
> If configure is run in a non-Apple UEFI system (mostly x86_64-efi and
> without bios compatibility) configure still sets up the makefiles as
> i386-pc. My suggestion would be to test for existence of either
> /proc/efi dir or /sys/firmware/efi dir to confirm that the kernel has
> booted in efi. Even if the dir(s) exist(s), I do not know of any way
> how to detect the booted efi arch (which can be independent of linux
> kernel arch).  My question is if a linux system is booted using grub2
> efi (arch unknown to the user) and he/she runs configure in that
> system, is it possible for the configure system to detect the platform
> (efi) and the efi arch (whatever it is) correctly.
> 
> If the user runs ./configure in a non-Apple Pure UEFI system it should
> automatically setup
> 
> ./configure --with-platform=efi --target=(detected efi arch)
> 
> instead of
> 
> ./configure --with-platform=pc --target-i386
> 
> which is what happens currently. Another question would be detecting
> efi boot when "noefi" kernel parameter is used (in which case the
> /rpoc/efi or /sys/firmware/efi dirs will not exist). In such a cease
> dmesg output may be useful.
> 
> Regarding grub-install in install branch, does it detect the efisys
> partition by checking the partition guids of the device (in case of
> GPT) or checking for 0xEF type code (in case of MBR) or does it use
> parted to check for existence of "boot" flag on any partition of a GPT
> disk and then checking for FAT16/32 FS? I suggest adding guid
> detection functionality in grub-probe for this purpose as that would
> be the most accurate way of detecting efisys part (atleast in a GPT
> disk). Also UEFI spec does not enforce any  "only 1 efisys partition
> per disk" rule. So if there are multiple FAT32 efisys partitions in a
> disk, it is better to use the first such partition in the disk for
> setting grub2 efi.
> 
> Finally since efi allows multiple bootloaders, apart from the
> <EFISYS_PART>/EFI/BOOT or <EFISYS_PART>/EFI/GRUB or
> <EFISYS_PART>/EFI/<VENDOR or DISTRIBUTOR>, I would like to setupgrub2
> in the following way :-
> 
> <EFISYS_PART>/EFI/GRUB2 and  <EFISYS_PART>/EFI/GRUB2_EXP and such.
> 
> I suggest a slight modification in grub-install script like below -
> 
> grub-install --modules="<My list of modules for grub2 efi app>"
> --root-directory="<EFISYS_PART_MountPoint>"
> --grub-prefix="/EFI/grub2_Keshav" /dev/sda
> 
> such that --grub-prefix overrides all grubprefix env variables in the
> grub-install script and allow the user to specify in which folder in
> the efisys should grub2 be installed. I may want to install grub2
> mainline in <EFISYS_PART>/EFI/grub2 and grub2 experimental branch in
> <EFISYS_PART>/EFI/grub2_exp and the install branch in
> <EFISYS_PART>/EFI/grub2_ins etc.
> 
> The current grub-install script sets up grub2 in /boot/grub or
> /boot/<program_transformed_name>. This --grub-prefix parameter in grub
> install will enable the grub2 dir naming independent of the renaming
> if the grub utils according to program_transform_name parameter passed
> to configure.
> 
> Regards.
> 
> Keshav
> 
> _______________________________________________
> Grub-devel mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/grub-devel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]