IPXE Boot - Windows 10 ISO via UEFI
-
Hey Guys,
I’m trying to do something “tricky” with our FOG install.
I’ve already customized our PXE boot menu to use isos like dban, live debian…New project: Using Windows 10 ISO in UEFI!
So i added the PXE boot menu entry like that:
kernel http://${fog-ip}/fog/boot/wimboot initrd http://${fog-ip}/w10x64/boot/bcd BCD initrd http://${fog-ip}/w10x64/boot/boot.sdi boot.sdi initrd -n boot.wim http://${fog-ip}/w10x64/sources/boot.wim boot.wim boot
Then i configured the DHCP to load ipxe.efi (option 67), and the computer to boot on PXE Uefi
Everything loads Well, but the Windows installation doesn’t find the hard drive, because i think the windows 10 installation is loaded in bios mode (like screen resolution is bad, dell logo isn’t displayed in the loading…)
I think it’s due to the PXE entry configuration, i don’t really know how to configure it to load bootmgr.efi in the ISO…Thank in advance for your help
ArnaudEdit: if it can helps, here are the interesting files available in the Win10 iso;
w10x64/efi/boot/bootx64.efi
w10x64/boot/bcd
w10x64/boot/boot.sdi
w10x64/bootmgr
w10x64/bootmgr.efi
w10x64/sources/manyregularfileslikeineverywindowsisohahaha(including boot.wim) -
I can give you a few bits of advice here.
- What you posted above is for bios mode, you do need to send the uefi equivalent files to the target system.
- Even if you do send the right files and the boot.wim file, that is only the boot.wim for the winpe environment. You won’t be able to access the .sdi (I think) files that contain the win10 image to deploy.
At the moment this is the only way I found to install win10 from a pxe boot. You need to create and send a custom winpe environment via pxe that connects to a network share. From there you can install win10. Its kind of a cheat, but it can work. For full disclosure I have not tested this in uefi mode. So I can’t say for sure if it will fit your situation.
-
Hey George
Thanks for your help
Yeah i’m sure that’s due to the wrong files specified in my entry configuration, but i don’t know the equivalent file to boot via UEFI, as well i haven’t find anything about it on Internet
I’ll have a look to your topic
Thank you -
@arnaudrigole I have seen uefi boot for windows winpe before.
This structure is close. But I think you use bootmgr.efi and bootmgfw.efi instead of wimboot. I’m trying to see if I can find the instructions. There are also more initrd lines since some fonts are also needed. I had that all in the post I linked, but removed them when booting that way did not help me install windows.kernel http://${fog-ip}/fog/boot/wimboot initrd http://${fog-ip}/w10x64/boot/bcd BCD initrd http://${fog-ip}/w10x64/boot/boot.sdi boot.sdi initrd -n boot.wim http://${fog-ip}/w10x64/sources/boot.wim boot.wim
-
This post is deleted! -
This is untested but should be pretty close.
kernel tftp://${fog-ip}/wimboot gui initrd -n bootx64.efi tftp://${fog-ip}/boot/bootx64.efi bootx64.efi initrd -n bcd tftp://${fog-ip}/boot/bcd bcd initrd -n boot.sdi tftp://${fog-ip}/boot/boot.sdi boot.sdi initrd -n segmono_boot.ttf tftp://${fog-ip}/boot/fonts/segmono_boot.ttf segmono_boot.ttf initrd -n segoe_slboot.ttf tftp://${fog-ip}/boot/fonts/segoe_slboot.ttf segoe_slboot.ttf initrd -n segoen_slboot.ttf tftp://${fog-ip}/boot/fonts/segoen_slboot.ttf segoen_slboot.ttf initrd -n wgl4_boot.ttf tftp://${fog-ip}/boot/fonts/wgl4_boot.ttf wgl4_boot.ttf initrd -n boot.wim tftp://${fog-ip}/boot/boot.wim boot.wim boot
It relies on the files existing in the /tftpboot/boot directory.
-
I found my notes on this. This one is for BIOS mode. I used the nfs protocol instead of tftp. Both will work. You just have to place the files in a different location based on the protocol.
kernel nfs://${fog-ip}:/images/os/mswindows/wimboot gui initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/bootmgr.exe bootmgr.exe initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/bcd bcd initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/fonts/segmono_boot.ttf segmono_boot.ttf initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/fonts/segoe_slboot.ttf segoe_slboot.ttf initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/fonts/segoen_slboot.ttf segoen_slboot.ttf initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/fonts/wgl4_boot.ttf wgl4_boot.ttf initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/boot.sdi boot.sdi initrd -n boot.wim nfs://${fog-ip}:/images/os/mswindows/10-1607/sources/BOOT.wim boot.wim imgstat boot
I have not tested this, but a quick file change and this should work for UEFI. Also for uefi booting, you must send the ipxe.efi iPXE boot kernel. You can not boot into uefi mode from undionly.kpxe boot kernel.
kernel nfs://${fog-ip}:/images/os/mswindows/wimboot gui initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/bootx64.efi bootx64.efi initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/bcd bcd initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/fonts/segmono_boot.ttf segmono_boot.ttf initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/fonts/segoe_slboot.ttf segoe_slboot.ttf initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/fonts/segoen_slboot.ttf segoen_slboot.ttf initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/fonts/wgl4_boot.ttf wgl4_boot.ttf initrd nfs://${fog-ip}:/images/os/mswindows/10-1607/boot/boot.sdi boot.sdi initrd -n boot.wim nfs://${fog-ip}:/images/os/mswindows/10-1607/sources/BOOT.wim boot.wim imgstat boot
Just be aware these instructions will NOT boot "Windows 10 ISO via UEFI" so you can install WIN10 as in the OP's question. The only way I found to boot the win10 ISO so you can install Win10 is by using the link I posted previously.
-
@george1421 Thank you very much for your time George. I’ll try today and back to you asap