In our current environment our PXE server is not allowing our machines to boot to our KACE appliances when in UEFI mode. As a result we have been booting machines to the PXE server with BIOS mode on and then changing the boot mode after the image is deployed. 

Obviously this is not practical. We are working on deploying Windows 10 organization-wide and here are my questions:

1) Can our PXE server be set to boot both BIOS and UEFI capable devices? I will need to get with our systems team and go from there if so and this will fix our issue most likely. Some of our devices will require BIOS boot in 10 unfortunately so an "all-or-nothing" approach is not desirable.

2) If not, how can I avoid the "Apply UEFI Partitions" task in K2000 failing? As of right now, even when using CCTK in the deployment and setting the boot mode to UEFI after booting to the KACE appliance with BIOS mode the apply partitions task fails which I assume is by design. Strangely though, even though the task fails, the system boots fine after deployment. Is this expected behavior? This is the tasks I'm using:

Create UEFI Partitions
Select disk  0
Clean
Convert gpt
Create partition efi size=200
Assign letter=s
Format quick fs=FAT32
Create partition msr size=128
Create partition primary
Assign letter=c
Format quick fs=NTFS
Exit

Apply UEFI Partitions (which fails)
bcdedit /set {bootmgr} device partition=s:
bcdedit /set {memdiag} device partition=s:
bcdedit /set {default} device partition=c:
bcdedit /set {default} osdevice partition=c:
Bcdedit /set {FWbootmgr} displayorder {Bootmgr} /addfirst

And my CCTK script does the following at the beginning of the deployment:

cctk.exe bootorder --activebootlist=uefi
cctk.exe --secureboot=enable
cctk.exe --legacyorom=disable
cctk.exe --embsataraid=ahci

I know the obvious answer is we could use a USB boot disk to boot in UEFI mode but I'm talking about around 1,500+ devices we will need to migrate to 10 and UEFI. I would much rather have a solution that works reliably with our existing infrastructure than running around with 10-20 USB disks but if that is my only option so be it. I just can't imagine this hasn't been talked about and solved somewhere... so here I am. :)
1 Comment   [ + ] Show Comment

Comments

  • try leaving that task out, the fix bcd task may be taking care of those changes.

    see

    http://www.itninja.com/question/what-does-fix-bcd-do
Please log in to comment

Answers

0
what if you change the mid level apply uefi partition task 

from:

bcdedit /set {bootmgr} device partition=s:
bcdedit /set {memdiag} device partition=s:
bcdedit /set {default} device partition=c:
bcdedit /set {default} osdevice partition=c:
Bcdedit /set {FWbootmgr} displayorder {Bootmgr} /addfirst

to:

bcdedit /store S:\efi\microsoft\boot\bcd /set {bootmgr} device partition=s:
bcdedit /store S:\efi\microsoft\boot\bcd /set {memdiag} device partition=s:
bcdedit /store S:\efi\microsoft\boot\bcd /set {default} device partition=c:
bcdedit /store S:\efi\microsoft\boot\bcd /set {default} osdevice partition=c:
Bcdedit /store S:\efi\microsoft\boot\bcd /set {FWbootmgr} displayorder {Bootmgr} /addfirst

bootsect /nt60 s:

Q) does it successfully finish?

Also, I assume if you look on s: is there the file S:\efi\microsoft\boot\bcd, which is what the task expects to exist, in order to edit it ?

If not you could run this as a mid task, prior to the apply uefi partition task:

bcdboot c:\windows /s s: /f UEFI

of course, you have to run this using PE10 based KBE.
Answered 05/24/2016 by: gerald_mack
Senior Yellow Belt

  • I simply removed the mid-level task and the "fix BCD" built-in task automatically fixed this problem. Thanks! @gerald_mack
Please log in to comment
Answer this question or Comment on this question for clarity