UEFI : a blessing or not?

October 16, 2014 - ConfigMgr/SCCM, SCCM 2012, System Center

Deploying UEFI machines with SCCM has caused me lately quite some headache, I guess I am not alone…  I even said to someone as a joke: ‘I can write a book on that item’.

So maybe it won’t hurt to make some sort of overview of issues you might encounter when trying to do UEFI rollouts

I can imagine you have seen other issues, feel free to post them in the comments and I will update this article.

Q1 : Do I need to do something to use PXE on UEFI machines?

this is a good starter…

it really depends mostly on the OS of your SCCM/WDS server.

2008 R2 supports native PXE boot of 64-bit EFI devices, not of 32-bit devices (so watch out if you have older Atom Clover Trail machines as they are 32bit only!)

2012/R2 server supports PXE boot of both 64bit and 32bit UEFI devices

so by preference you should have at least one DP that has the 2012 or 2012 R2 server installed.

if your SCCM infra is not yet on R2 level, but still on SP1, you should also install the following hotfix to enable 32bit UEFI pxe:

Keep in mind that for UEFI you cannot install x64 OS with x86 bootimages (this works only for legacy bios UEFI devices)

also make sure that you are using MDT 2013, there is a known problem with MDT 2012 update 1 Task Sequences and UEFI:

The standard MDT 2012 Update 1 Task Sequence, has a bug when deploying Windows 8 to UEFI enabled devices. The default “Apply Operating System Image”, has the thestination configured to use “Logical drive letter stored in a variable” = “OSDisk”.

The only problem with that is that when the disk is formatted using the new Format and Partition Disk (UEFI) step, the OSDisk variable is not configured. All other format steps has this variable configured, so I guess they just forgot this one.

Steps to fix this bug:

1.Edit the MDT Task Sequence.

2.Locate and select the “Format and Partition Disk (UEFI)” step.

(Preinstall -> New Computer Only -> Format Disk).

3.Select the Volume: “OSDisk (Primary)”, and click Properties.

4.Under Advanced options, set the variable to “OSDisk”.

Q2 : PXE boot for UEFI machines is not working, now what?

this is the next most popular question…

and again the answer depends

* are you using DHCP scope options or IP helpers?

you should go for  IP helpers, I had one case where it didn’t work at all using DHCP scope options

if you cannot go for  IP helpers, you might want to verify the option 67 (bootfilename), in theory even if the smsboot\x64\ is there the UEFI machine should be smart enough to select the wdsmgfw.efi file instead, but it is not always the case

so it might be better to put the wdsmgft.efi in there, but then again legacy clients will not be able to boot (still not convinced that IP Helpers is the best solution?)

* is the UEFI machine behind a switch?

try to move the machine closer to your PXE DP, I have seen problems with UEFI machines behind switch A, where that same machine behind switch B booted perfectly fine

so you will need to rely on your network dude to solve that problem for you (he should be your best friend anyway)

* can you try with another UEFI machine?

sometimes machine A succeeds and B doesn’t

in that case the solution is most often to update the bios/firmware of the non functioning machine

* is the time and date on the UEFI machine correct?

check this, I have seen it fail due to this!

* so I went into the BIOS and I noticed there is something called ‘Legacy mode’, why can’t I use that?

surely you can, but then you are not using UEFI anymore…  and not all devices will have that legacy mode option left!

it might be useful to turn off the ‘secure boot’ option in the bios anyway

* are you using a USB to ethernet dongle?

be aware that the MAC address you use will be the one from the dongle (especially when you import computers)

you should modify your task sequence a bit to tie the WLAN mac address to the machine. this is documented here:

Q3 : Bootmedia related questions with UEFI

Personally to create the media I prefer to use Rufus ( .

You need to format the medium using GPT and FAT32 (exFat seems to work also).

If you are using bootmedia, you should have a file BOOTIA32.EFI on there in a folder EFI\boot!

Q4 : Task Sequence formatting/drive problems with UEFI

When deploying to UEFI machines, the TS should have evaluated the conditions for the step ‘partition disk 0 – UEFI’ correctly.

If that step DOES NOT have the option “make this the bootdisk” selected then the TS will not know which disk to use to lay down the OS