본문으로 바로가기

TinypxeServer -펌웨어,플랫폼별 자동 부팅

category Win Style/WinAll 2018. 5. 18. 13:17
반응형

이번에는 메뉴 자동으로 해보았다.


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







반응형