4

I am trying to follow some instructions to update some firmware and my instructions are

x64 UEFI environment: Boot to UEFI shell Run update.nsh

My OS : Server 2012 R2

  1. So when i boot do i have a choice to boot to UEFI Shell?
  2. Please help me how i can achieve that?

I have google around and it even confused me more so not sure if i need a separate bootable CD to go to UEFI shell or is this something like safe mode where i press a certain key to go to UEFI Shell

  • Advanced Startup – Ramhound Mar 26 '16 at 15:55
  • @Ramhound only if his question is how to get into UEFI setting – Tom Yan Mar 26 '16 at 15:59
  • Man I am lost so there is no build in shell and advanced settings are settings for uefi but not gives me shell? – SeanClt Mar 26 '16 at 16:00
  • @TomYan - Which is what Advanced Startup allows him to do – Ramhound Mar 26 '16 at 16:12
  • @Ramhound You mean his UEFI Setting (instead of Advanced Startup) MIGHT allow him to launch a EFI shell right (which he seemed to have confirmed negative)? Coz I have no idea what you are talking about. – Tom Yan Mar 26 '16 at 16:14
8

It depends on whether your UEFI has a shell builtin. If it does, there should be an option in its settings / boot menu for you to launch it. Some motherboard also provide an option to launch a shell from the EFI System Partition (ESP). You should consult the manual of your motherboard for the path it will look for (the instruction is often vague though).

Another way is to launch it just like you launch any other EFI binary (e.g. bootloader). Since it's not really accessible to register a EFI binary to your UEFI or put the shell binary to your ESP in Windows, so the easiest way is probably to put it as \EFI\Boot\bootx64.efi (also put the update.nsh you need to run and the files it requires under \EFI\Boot\) in a FAT(32)-formatted USB drive (It shouldn't matter whether it's MBR or GPT as long as your UEFI is standard-conforming enough). Then reboot and boot the USB in UEFI mode from your UEFI boot menu.

You can obtain the EFI shell binary from the EDK2 project repo:
v2: https://github.com/tianocore/edk2/blob/master/ShellBinPkg/UefiShell/X64/Shell.efi?raw=true
v1 (no longer updated, only for old UEFI that does not work with v2):
https://github.com/tianocore/edk2/blob/master/EdkShellBinPkg/FullShell/X64/Shell_Full.efi?raw=true

P.S. You may need to disable Secure Boot.

  • I am just standard server 2012 r2 installation so my question is really specific about it – SeanClt Mar 26 '16 at 15:49
  • 1
    @SeanClt Doesn't my answer clearly shows that it almost has nothing to do with your OS? – Tom Yan Mar 26 '16 at 15:56
  • Oh sorry misunderstood – SeanClt Mar 26 '16 at 15:56
  • @SeanClt updated my answer (the bold text), if you still can't help yourself with it then well, good luck – Tom Yan Mar 26 '16 at 16:04

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.