On 08/22/2014 01:42 PM, Bruce Dubbs wrote:
Dan McGhee wrote:

It's almost sounding like UEFI is a big nothing, except for Windows. No?
By now I had hoped to make more progress in booting LFS in UEFI using
LFS-7.5. But, alas, life interfered so I'm waiting for 7.6 to continue.

First of all, it's important to make sure that the different terms are
not "muddied." Here's the list I learned that causes the most confusion:
BIOS, UEFI, MBR, Secure Boot, Boot Manager and Boot Loader.

UEFI is hardware and its standard, if it hasn't yet certainly will,
replaces BIOS. The major difference is the bit size between the two. I'm
going completely from memory here: BIOS is 16-bit and UEFI is 128. BIOS
is still used to refer to that part of a computer which does the initial
boot, and is not quite technically precise. (On my HP laptop, I just
installed a "BIOS" Update, and I must enter BIOS Settings to change
things around, although I have UEFI firmware.)
I delayed in responding to do some research and make sure that I was not going to ignore my own cautions and mix terms. In a thread last year, Bruce, you wrote something to the effect, "Using UEFI and Grub is bleeding edge." I wholeheartedly agree with that and want to modify it just a bit and say--if it's not still bleeding edge at least the wound is still moist, and there's no scab or scar tissue yet. And this is the reason I keep discussing the point on these lists. I think we are all still "getting used to it." For my remarks in this post I'm referencing the documentation here:

www.rodsbooks.com

and various Wikipedia pages that reference "rodsbooks."


MBR is an actual place on a BIOS based machine who's function most of us
know.

Not exactly. It is the part of the boot sector (actually 64 bytes) that describes the MSDOS style hard disk layout (primary/extended partitions).

http://en.wikipedia.org/wiki/Master_boot_record

It's the place where GRUB lives.

GRUB on a MSDOS system lives on the first 63 sectors of the hard disk (includes the boot sector which in turn contains the MBR). On a GPT partitioned disk, it lives in its own special partition (typically 1Mb).

I'm not sure, but I think UEFI or requires a GPT partitioned boot disk.
This is correct. GPT is part of the UEFI Specification. I think linux uses GPT (GUID Partition Table) as a consistency issue since UUID (linux) is the same as GUID.

You can find a good summary of differences between MBR partition table and GUID Partition Table here:

https://wiki.archlinux.org/index.php/GUID_Partition_Table


The MBR Layer is what UEFI uses
for it's Legacy Boot option, and acts like an MBR. GRUB also lives there
if you have set up "Legacy Boot" and followed the instructions in the
LFS book. UEFI is many times used synonymously with Secure Boot. This is
not correct.

I agree with the last part.

UEFI uses what I call an intermediate step when it comes to booting.
Classically, we LFSers are used to booting into a GRUB menu. GRUB,
however, although I think it's morphing, is a boot loader. UEFI uses a
*Boot Manager*--the intermediate step--to access a Boot Loader. Secure
Boot throws in a monkey wrench.

Although turning it off and on is accessed through "BIOS" settings,
Secure Boot is a software thing. When enabled, it looks in the EFI Boot
Partition--the analogue of MBR--to determine which boot loaders are
"secure." It does this by finding signed *.shm files on that partition.
I *think* that what Secure Boot was designed to protect against is not
possible anymore. I do *know* that Microsoft, after a fee, issues
"signing approval" for the *.shm files. At least Ubuntu and Fedora have
paid and that's why they can be used with Secure Boot.

You, allegedly, can boot anything from anywhere with Secure Boot set to
'OFF' in the "BIOS." It's just a matter of putting it in the right spot
and finding it.

Yes. Finding it in the BIOS settings. In my case there were two settings that had to be changed. After that, all EFI stuff can be ignored. The ONLY reason not to do that is if you want to dual boot to Windows.
...or MacOS or use more than one boot manager. Interestingly, one must do this with Windows <= 7. I don't know if the BIOS settings are standard, but, although you don't say which settings you changed, I'll bet it was something like this:

Secure Boot [OFF]
Legacy Boot [ENABLED]

This is where the Boot Manager comes in. For Linux, the ones with which
I'm familiar are gummiboot, rEFInd and efibootmgr. However, to build and
install these things, the kernel must be correctly configured and the
EFI Boot Partition mounted.

Again, if it's turned off, no EFI partition is required.
Here is where I disagree with you. But it's only semantics and not knowledge or theory. If "Legacy Boot" is enabled, no EFI System Partition is required. If Grub is installed in the MS-DOS MBR layer it works just like it did in "the good old days." So, even if you wanted to boot to Windows, you could use Grub's chainloader--just as I think you would for MacOS (but here I'm on really shaky ground. I don't know.)

I really want to be successful in booting right to Grub without going to legacy mode. I was not successful when building LFS-7.4 because I lacked a lot of knowledge in how all this stuff fit together. I think I've learned enough to be successful this time. I know that with your setup you are already there, but I would like to do this with the only setup being to turn off Secure Boot.

Dan

--
http://lists.linuxfromscratch.org/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to