Centos7 uefi boot problem with bhyve after update
Mike Gerdts
mike.gerdts at joyent.com
Fri May 4 12:57:01 UTC 2018
On Fri, May 4, 2018 at 7:26 AM, Michael Reifenberger <mike at reifenberger.com>
wrote:
> The kernel version shouldn't matter that much because the error occures
> before the kernel gets loaded.
> It's after /EFI/BOOT/BOOTX64.EFI got loaded and before
> /EFI/centos/grubx64.efi gets loaded
> because of not beeing found...
>
On SmartOS I've found that fresh installations of CentOS 7 put all of the
required files to actually boot the OS in the /EFI/centos directory leaving
the /EFI/BOOT directory mostly empty. The image at https://ibb.co/jFwDES
matches this symptom. This can be fixed (hacked around) via the EFI shell.
The following is pieced together from scrollback (that was kinda wonky due
to size issues) from a serial console.
Shell> FS0:
FS0:\> cd efi
FS0:\efi\> cd BOOT
FS0:\efi\BOOT\> dir
Directory of: FS0:\efi\BOOT\
05/03/2018 19:29 <DIR> 4,096 .
05/03/2018 19:29 <DIR> 4,096 ..
08/31/2017 21:30 1,296,176 BOOTX64.EFI
08/31/2017 21:30 79,048 fbx64.efi
2 File(s) 1,375,224 bytes
2 Dir(s)
FS0:\efi\BOOT\> cd ..\centos
FS0:\efi\centos\> dir
Directory of: FS0:\efi\centos\
05/03/2018 19:27 <DIR> 4,096 .
05/03/2018 19:27 <DIR> 4,096 ..
05/03/2018 19:29 <DIR> 4,096 fonts
08/31/2017 21:30 1,297,120 shimx64-centos.efi
08/17/2017 18:00 1,052,032 grubx64.efi
08/31/2017 21:30 134 BOOT.CSV
08/31/2017 21:30 134 BOOTX64.CSV
08/31/2017 21:30 1,262,816 mmx64.efi
08/31/2017 21:30 1,296,176 shim.efi
05/03/2018 19:33 1,024 grubenv
08/31/2017 21:30 1,296,176 shimx64.efi
05/03/2018 19:33 4,231 grub.cfg
9 File(s) 6,209,843 bytes
3 Dir(s)
FS0:\efi\centos\> cp -r * ..\boot
Copying FS0:\EFI\centos\fonts -> FS0:\EFI\BOOT\fonts
...
Copying FS0:\EFI\centos\grub.cfg -> FS0:\EFI\BOOT\grub.cfg
- [ok]
FS0:\efi\centos\> reset
I've not curled up with the EFI spec for a while and forget how it is
supposed to choose which directory to read the various files from. That
is, the fault here could be that of bootrom not reading the files it should
or the guest OS not putting the right thing in \EFI\BOOT to get it to look
in \EFI\centos.
Mike
More information about the freebsd-virtualization
mailing list