Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Mar 2023 16:05:59 -0400
From:      Paul Mather <paul@gromit.dlib.vt.edu>
To:        FreeBSD Mailing List <freebsd-questions@freebsd.org>
Cc:        "Derek (freebsd lists)" <482254ac@razorfever.net>
Subject:   Re: Current best practices: UEFI boot on zfsboot nvme raid?
Message-ID:  <0781D60A-204F-419C-8A79-34D4668AEE69@gromit.dlib.vt.edu>
In-Reply-To: <c9cce226-5581-bfa5-f6d4-ae940791f206@chezmarcotte.ca>
References:  <fa6f8a67-e358-8e09-aeee-90018ec7a5ee@chezmarcotte.ca> <D17EBA11-C66B-4271-A83A-FBD0936BB8B6@gromit.dlib.vt.edu> <c9cce226-5581-bfa5-f6d4-ae940791f206@chezmarcotte.ca>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mar 23, 2023, at 3:33 PM, Derek (freebsd lists) =
<482254ac@razorfever.net> wrote:


> On 2023-03-23 15:23, Paul Mather wrote:
>> On Mar 22, 2023, at 4:56 PM, Derek (freebsd lists) =
<482254ac@razorfever.net> wrote:
>>> My guess is, like swap, it might be possible to gmirror across my =
RAID this filesystem and remove all of these considerations.  Is this =
the best practice?
>> I don't know if it's best practices, but that is what I do.  I have a =
/dev/mirror/efi geom_mirror msdosfs mounted via /etc/fstab on /boot/efi. =
 That makes it easy to update both copies at once and keep them in sync.
>> However, the HUGE downside is that efibootmgr doesn't appear to work =
with GEOM labels, and so I get "efibootmgr: Cannot translate unix loader =
path" errors when trying to create new boot entries via "efibootmgr -c". =
:-(
>> I believe this Bugzilla is pertinent, and it still appears to be =
open: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D229191
>> So, I guess best practices for everything working is to stick with =
the low-level device names like ada0p1 and so on.
>=20
> This is great information, and good leads to follow.  Thanks for your =
reply.
>=20
> For those finding the thread later, I feel like "stick with low-level =
device names" refers to the work around when using efibootmgr referenced =
in the bug.


I want to affirm what Derek states above.  Using the workaround given in =
the Bugzilla I was able to create new EFI boot variables via "efibootmgr =
-c".  Note, you do need to be careful about the path given for the "-l" =
option as it won't translate for you as shown in the manual page.  E.g., =
I ended up doing the following:

	efibootmgr -a -c -l ada0p1:/EFI/freebsd/loader.efi -L =
"FreeBSD-STABLE D0"

(Note that the path given after the device name for "-l" refers to the =
path in the EFI [msdosfs] partition, not where it is mounted on the =
FreeBSD system.)

That resulted in this entry being created:

+Boot0001* FreeBSD-STABLE D0 =
HD(1,GPT,3fa4f298-d933-11ec-9b67-002590da97de,0x28,0x82000)/File(\EFI\FREE=
BSD\LOADER.EFI)
                                ada0p1:/EFI/FREEBSD/LOADER.EFI (null)



Cheers,

Paul.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0781D60A-204F-419C-8A79-34D4668AEE69>