While installing macOS specifically Mojave is pretty easy on an actual Mac, but if you are a Windows user, that is not the case. If you are a Windows user who wants macOS for some reasons, however, you can, but there’s a whole lot to do. From finding the right VirtualBox) image to creating a virtual machine and troubleshooting booting problems, there’s a lot of challenges to deal with.
I am running a virtual machine for Mac OSX and it always boots into EFI shell, I just want a simple explanation of what this is and how, if possible, to exit it.
DavidPostill♦1 Answer
The EFI shell is a command-line tool similar in concept to bash in Linux/Unix/OS X or a Command Prompt window in Windows. It lets you view, delete, edit, and rename files, to update EFI boot manager entries, and so on. You can exit from the shell by typing exit
; however, in the case of VirtualBox, this will probably bring you to an EFI menu that can be just as confusing.
If you've installed an OS in your VirtualBox session, chances are it installed a boot loader on the EFI System Partition (ESP). Most OSes register these boot loaders with the firmware, which remembers them and boots them automatically. One quirk of VirtualBox is that it usually forgets these boot manager entries. The result is that the VM boots up into the EFI shell by default. There are several ways to deal with this problem, including:
- You can launch the boot loader manually by using the EFI shell:
- Type
fs0:
to access the first filesystem, which is usually the ESP. - Type
cd EFI{osname}
, where{osname}
is the name of the directory where your OS installed its boot loader. (You haven't said what OS you've installed, so I can't be sure what that is. Typingls EFI
will show you what's there.) - Launch the boot loader by typing its name. Again, I can't know what that is. For Linux, it's usually
grubx64.efi
. For Windows, it'sbootmgfw.efi
.
- Type
- Automate the above procedure with an EFI shell startup script (
startup.nsh
in the root directory of the ESP). - Rename the boot loader to
EFIBOOTbootx64.efi
, which is the fallback filename:- Type
fs0:
to access the first filesystem, which is usually the ESP. - Type
mv EFI{osname} EFIBOOT
to rename the directory in which the boot loader resides. As above, you'll have to determine what{osname}
is yourself. - Type
mv EFIBOOT{loadername.efi} EFIBOOTbootx64.efi
, where{loadername.efi}
is the boot loader's name, such asgrubx64.efi
for most Linux installations.
- Type
- Register the boot loader with the VirtualBox firmware by using the shell's tools. I don't know of a concise description of how to do this on the web, offhand, and I don't have time to write it up here. It's likely to be frustrating without precise instructions because there are a lot of non-obvious pitfalls you must avoid.
Boot Mac Os On Pc
Personally, the solution I most often use is to rename the boot loader from the OS's default to EFIBOOTbootx64.efi
. This is the easiest to implement and it works well enough. One drawback to this approach is that if your OS ever updates the boot loader, the update will probably go to the original location, so you'll have to repeat the process if you want to use the updated boot loader.
Mac Os X Efi Boot Usb
Mac Os Efi Boot Download
protected by Community♦Jul 11 at 2:43
Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).
Would you like to answer one of these unanswered questions instead?