lgm1 Posted February 5, 2022 Share Posted February 5, 2022 Hello everyone, I'm stuck and hope to get some help here. I've got a Fujitsu Esprimo E920 here. The machine is booting macOS with latest OpenCore, maybe some polishing needed but quite nicely so far. However, it won't load OpenCore from the internal ssd, only from an USB stick. On the EFI partition there is the same content as on the USB stick. It simply won't show up in the boot selector. Windows 10 on the other hand will install and boot ok. I see no difference in between the two in EFI/BOOT/BOOTx64.efi. For Windows10 I need to turn off CSM, I think this is the correct setting for macOS too, though I tried every other combination. And I still see no relevance for the boot partition selection. The machine is from a time when UEFI was new. Maybe it's implementation is crappy and I should try with BIOS mode (CSM on) an OpenCore legacy? Thanks for you help. Markus Quote Link to comment https://www.insanelymac.com/forum/topic/350711-booting-only-possible-from-usb-stick/ Share on other sites More sharing options...
Slice Posted February 5, 2022 Share Posted February 5, 2022 You may try Clover. Quote Link to comment https://www.insanelymac.com/forum/topic/350711-booting-only-possible-from-usb-stick/#findComment-2776308 Share on other sites More sharing options...
Avery B Posted February 5, 2022 Share Posted February 5, 2022 (edited) It may be that your firmware is reading the file EFI/Microsoft/bootmgfw.efi and adding that automatically, not EFI/BOOT/BOOTx64.efi when on an internal disk. What you could do is use Linux or UEFI shell (Don't boot it through OpenCore, boot it from a USB) to add OpenCore.efi to your firmware directly, or you could try putting OpenCore.efi at EFI/Microsoft/bootmgfw.efi. Could try manually booting OpenCore.efi through UEFI shell as well, it will add itself to the boot list when it boots. This can be configured under Misc->Boot in your config.plist Wouldn't Clover have the same issue? If the BIOS doesn't pick up OpenCore on the disk at all, I doubt Clover would be picked up too unless it was manually added or moved to EFI/Microsoft/bootmgfw.efi. Edited February 5, 2022 by 1Revenger1 Quote Link to comment https://www.insanelymac.com/forum/topic/350711-booting-only-possible-from-usb-stick/#findComment-2776325 Share on other sites More sharing options...
lgm1 Posted February 5, 2022 Author Share Posted February 5, 2022 Thanks, that sounds like a reasonable idea, will try that. Clover had the same issue. Quote Link to comment https://www.insanelymac.com/forum/topic/350711-booting-only-possible-from-usb-stick/#findComment-2776326 Share on other sites More sharing options...
Slice Posted February 5, 2022 Share Posted February 5, 2022 There is a trick for Clover. Rename /EFI/Microsoft/Boot/bootmgfw.efi to /EFI/Microsoft/Boot/bootmgfw-orig.efi Rename CloverX64.efi to /EFI/Microsoft/Boot/bootmgfw.efi Then your BIOS can start /EFI/Microsoft/Boot/bootmgfw.efi which is Clover and the Clover is able to understand what is /EFI/Microsoft/Boot/bootmgfw-orig.efi 1 Quote Link to comment https://www.insanelymac.com/forum/topic/350711-booting-only-possible-from-usb-stick/#findComment-2776328 Share on other sites More sharing options...
lgm1 Posted February 6, 2022 Author Share Posted February 6, 2022 You both brought me to something like a solution. @1Revenger1, you were right, the firmware is looking for the windows booter. As @Slice wrote, the correct location is /EFI/Microsoft/Boot/bootmgfw.efi OpenCore seems not to be aware of that solution (Clover might), but copying the whole content of /EFI/OC to /EFI/Microsoft/Boot (and renaming OpenCore.efi) did the trick. I can now boot from disk. For my understanding: This is not standard behavior of UEFI, right? From what I read the firmware should look for EFI/BOOT/BOOTx86.efi or BOOTx64.efi. Still this solution feels a bit weird. Can I tell the firmware to Loog for BOOTx64.efi? Maybe in OC UEFI shell? Or maybe I should leave it that way, at least this will survive a BIOS reset. Quote Link to comment https://www.insanelymac.com/forum/topic/350711-booting-only-possible-from-usb-stick/#findComment-2776339 Share on other sites More sharing options...
Avery B Posted February 6, 2022 Share Posted February 6, 2022 If you boot OpenCore (with it under EFI/OC/OpenCore.efi) through UEFI shell, it will add itself to NVRAM as a boot entry. Would need to throw UEFI shell on a USB, but it's probably the easiest solution without messing with bcfg in UEFI shell or a tool in Linux. I think technically EFI/BOOT/BOOTx64.efi is meant as a fallback or for USBs/external drives (which you don't want entries hanging around in NVRAM for). I myself wouldn't put OpenCore or Clover under EFI/Microsoft mostly because Windows could replace it (and EFI/Boot) if your installing it. It has a nasty habit of putting it's EFI on a drive other then the one Windows is installed on. That can be worked around though by disconnecting the drive while installing Windows, but no way around it if installing on the same drive afaik. Quote Link to comment https://www.insanelymac.com/forum/topic/350711-booting-only-possible-from-usb-stick/#findComment-2776341 Share on other sites More sharing options...
Guest 5T33Z0 Posted February 6, 2022 Share Posted February 6, 2022 @lgm1I don't know if it helps, but as I was skipping through the "Differences" pdf for OC 078, I stumbled over this added paragraph concerning "LauncherOption" which sound pretty much like your issue: Quote Note 3: Some versions of Intel Visual BIOS (e.g. on Intel NUC) have an unfortunate bug whereby if any boot option is added referring to a path on a USB drive, from then on that is the only boot option which will be shown when any USB drive is inserted. If OpenCore is started from a USB drive on this firmware with LauncherOption set to Full or Short, this applies and only the OpenCore boot entry will be seen afterwards, when any other USB is inserted (this highly non-standard BIOS behaviour affects other software as well). The best way to avoid this is to leave LauncherOption set to Disabled or System on any version of OpenCore which will be started from a USB drive on this firmware. If the problem has already occurred the quickest reliable fix is: Enable the system UEFI Shell in Intel Visual BIOS With power off, insert an OpenCore USB Power up and select the system UEFI Shell Since the system shell does not include bcfg, use the system shell to start OpenCore’s OpenShell (e.g. by entering the command FS2:\EFI\OC\Tools\OpenShell.efi , but you will need to work out which drive is correct for OpenCore and modify the drive number FS#: accordingly) Within OpenShell, use bcfg boot dump to display the NVRAM boot options and then use bcfg boot rm # (where # is the number of the OpenCore boot entry) to remove the OpenCore entry It is alternatively possible to start OpenShell directly from the OpenCore boot menu, if you have a working configured OpenCore for the system. In that case, and if OpenCore has RequestBootVarRouting enabled, it will be necessary to run the command \EFI\OC\Tools\OpenControl.efi disable before using bcfg. (After OpenControl disable, it is necessary to either reboot or run OpenControl restore, before booting an operating system.) It is also possible to use efibootmgr within Linux to remove the offending entry, if you have a working version of Linux on the machine. Linux must be started either not via OpenCore, or via OpenCore with RequestBootVarRouting disabled for this to work. Quote Link to comment https://www.insanelymac.com/forum/topic/350711-booting-only-possible-from-usb-stick/#findComment-2776351 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.