이번에는 메뉴 자동으로 해보았다.
x86_64 윈도우안에서 vmware라서, 32bit, 64bit EFI 를 menu에서 판별을 잘 못한다.
아마 네이티브환경에서는 잘 판별하여 부팅할 것 같다. 타블렛 같은 기종은 32비트efi도 있기때문에.
그래서 영상과는 다르게 PC대상을 하기에 일반적으로 하는 방식으로 최종 한다.
MBR 클라이언트 경우는 32비트 WIM으로 부팅하게 하고
UEFI 클라이언트 경우는 64비트 WIM 으로 부팅하게 했다.
menu.txt 파일내용
#!ipxe
# set menu-default win32menu
isset ${ip} || dhcp
isset ${next-server} || set next-server 192.168.100.1
iseq ${platform} pcbios && goto bios || goto efi
:bios
set pefile boot.wim && set indexnum 1
kernel http://${next-server}/wimboot gui index=${indexnum} || goto retry
initrd http://${next-server}/BOOT/boot.sdi boot.sdi || goto retry
initrd http://${next-server}/BOOT/bootmgr.exe bootmgr.exe || goto retry
initrd http://${next-server}/BOOT/BCD BCD || goto retry
initrd http://${next-server}/BOOT/${pefile} boot.wim || goto retry
boot || goto retry
goto start
:efi
set pefile boot.wim && set indexnum 2
kernel http://${next-server}/wimboot gui index=${indexnum} || goto retry
initrd http://${next-server}/BOOT/boot.sdi boot.sdi || goto retry
initrd http://${next-server}/EFI/BOOT/bootx64.efi || goto retry
initrd http://${next-server}/EFI/MICROSOFT/BOOT/BCD BCD || goto retry
initrd http://${next-server}/BOOT/${pefile} boot.wim || goto retry
boot || goto retry
goto start
:retry
imgfree
prompt Error! press any key to retry
goto start