@george1421
What’s odd is that it doesn’t work in legacy mode on my laptop but does work in whatever the other mode is. I wouldn’t call it UEFI mode because the laptop has both UEFI and BIOS modes and is permanently set in BIOS mode. It is indeed UEFI mode. The other odd thing about all of this, is that it works in both UEFI and BIOS modes when booting as a virtual machine in ESXi 6.5 which is where I have been doing most of my testing since it is much easier than rebooting my laptop over and over. I am going to continue to play around with it. I can always fall back to booting any systems that fail PXE booting by booting from the GRUB4DOS USB harddrive and/or flash drive which accomplishes the same thing. I was just trying to avoid having to have the USB drive available at all times. Plus since I have ethernet throughout the entire house, it was a fun project to work on.
Posts made by JCDinPGH
-
RE: IPXE boot missing NEXT-SERVER
-
RE: IPXE boot missing NEXT-SERVER
@george1421
I am using a WIN 7 PE built using WINBUILDER from www.theoven.org. Unfortunately there is no bootmgr.exe in BCD which is why I had to supply it. There isn’t a bootmgr.exe which I know is odd but it has something to do with how WINBUILDER builds the whole system.
The boot.wim is very large (977450336 bytes) when compared to a regular WIN 7 PE system because WINBUILDER allows incorporating a large number of utilities and drivers into the build. Think of it as a portable “fixit” system with antivirus and system image utilities all built in.
What is odd is that the UEFI boot option, which correctly loads IPXE, works just fine.
The “legacy” boot option which also correctly loads IPXE, gets the “no space left on device” error.
I’m ok with using the UEFI option, at least on my primary laptop. I haven’t tested some of my other workstations, but I do know they do not have a UEFI bios so I would be surprised if they will work. -
RE: IPXE boot missing NEXT-SERVER
@george1421
Getting a screen shot might be hard but I will try to describe what is happening.
My laptop has two options for PXE booting. One is “legacy” and one is something else that I am not sure I would call UEFI since my laptop has both BIOS and UEFI modes but is currently set to BIOS mode. FWIW, this is an Alienware laptop. Legacy is failing once IPXE loads and I choose the WIN PE option. The other unlabeled mode network boot option works correctly. The FOG menu entry for WIN PE 7 is what is failing and only when it gets to the boot.wim when the error says “no space left on device”. http://ipxe.org/34182006
I hit “S” and then config and according to the IPXE config, the file it is loading is “undionly.kpxe”.
The menu entry for FOG looks like this:kernel http://${fog-ip}/iso/winpe/wimboot # next two lines are from the AIK initrd http://${fog-ip}/iso/winpe/amd64/boot/bcd BCD initrd http://${fog-ip}/iso/winpe/amd64/boot/boot.sdi boot.sdi # this is the boot.wim built by Winbuilder (theoven.org) initrd http://${fog-ip}/iso/winpe/boot.wim boot.wim # bootmgr.exe comes from the Windows 7 source CD by mounting sources\boot.wim via DISM /Mount-Wim /WimFile:sources\boot.wim /Index:1 /MountDir:e:\mount # and copying bootmgr.exe from e:\mount\Windows\Boot\PXE initrd http://${fog-ip}/iso/winpe/bootmgr.exe bootmgr.exe # imgstat # prompt boot
-
RE: IPXE boot missing NEXT-SERVER
Sorry. I was wrong. I am getting the “No space left on device” error even when using DHCPD. What’s odd is I know I didn’t change any other settings. I was very careful not to. I did look through lots of the options and config in the GUI but I was very careful to not change anything. I might just rebuild my FOG server from scratch since I have been working on this for so long.
-
RE: IPXE boot missing NEXT-SERVER
I spoke too soon. Now when I netboot, the FOG menu comes up and I can choose an option, but the one I have been working on for quite awhile (booting WINPE 7) now says “no space left on device”. This doesn’t happen when netbooting while the DHCPD service is up an running. Nothing in FOG was changed at all so I am not sure what is causing this and why it works with DHCPD but not DNSMASQ. Any ideas?
-
RE: IPXE boot missing NEXT-SERVER
@george1421 said in IPXE boot missing NEXT-SERVER:
# Don't function as a DNS server: port=0 # Log lots of extra information about DHCP transactions. log-dhcp # Set the root directory for files available via FTP. tftp-root=/tftpboot # The boot filename, Server name, Server Ip Address dhcp-boot=undionly.kpxe,,<fog_server_IP> # Disable re-use of the DHCP servername and filename fields as extra # option space. That's to avoid confusing some old or broken DHCP clients. dhcp-no-override # inspect the vendor class string and match the text to set the tag dhcp-vendorclass=BIOS,PXEClient:Arch:00000 dhcp-vendorclass=UEFI32,PXEClient:Arch:00006 dhcp-vendorclass=UEFI,PXEClient:Arch:00007 dhcp-vendorclass=UEFI64,PXEClient:Arch:00009 # Set the boot file name based on the matching tag from the vendor class (above) dhcp-boot=net:UEFI32,i386-efi/ipxe.efi,,<fog_server_IP> dhcp-boot=net:UEFI,ipxe.efi,,<fog_server_IP> dhcp-boot=net:UEFI64,ipxe.efi,,<fog_server_IP> # PXE menu. The first part is the text displayed to the user. The second is the timeout, in seconds. pxe-prompt="Booting FOG Client", 1 # The known types are x86PC, PC98, IA64_EFI, Alpha, Arc_x86, # Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI and X86-64_EFI # This option is first and will be the default if there is no input from the user. pxe-service=X86PC, "Boot to FOG", undionly.kpxe pxe-service=X86-64_EFI, "Boot to FOG UEFI", ipxe.efi pxe-service=BC_EFI, "Boot to FOG UEFI PXE-BC", ipxe.efi dhcp-range=<fog_server_ip>,proxy
My DNSMASQ is v2.76. Replacing with your ltsp.conf seems to have solved it. Thanks so much!
[Mod note] I included the text in a code block for the OP - Geo
-
netbooting winbuilder WINPE 7 ISO
Hopefully this helps some others. Through a tremendous amount of trial and error, I was able to netboot/IPXE boot an ISO created using winbuilder from theoven.org. You can build a WINPE 7 (or 10) using the plugins and WINBUILDER from THEOVEN.ORG. Tha advantage is that it can include a very large amount of apps like antivirus or several different disk imaging packages. Be sure that you configure the plugins to “RUN from RAM” so that they are included in the BOOT.WIM when building. Also, because the BOOT.WIM can be much larger than normal depending on the drivers and apps included, the system you are netbooting/IPXE booting from will need a large amount of memory. This is my MENU entry for booting an unpacked ISO built using winbuilder.
kernel http://${fog-ip}/iso/winpe/wimboot # next two lines are from the AIK initrd http://${fog-ip}/iso/winpe/amd64/boot/bcd BCD initrd http://${fog-ip}/iso/winpe/amd64/boot/boot.sdi boot.sdi # this is the boot.wim built by Winbuilder (theoven.org) Extract from ISO initrd http://${fog-ip}/iso/winpe/boot.wim boot.wim # bootmgr.exe comes from the Windows 7 source CD by mounting sources\boot.wim via DISM /Mount-Wim /WimFile:sources\boot.wim /Index:1 /MountDir:e:\mount # and copying bootmgr.exe from e:\mount\Windows\Boot\PXE initrd http://${fog-ip}/iso/winpe/bootmgr.exe bootmgr.exe # imgstat # prompt boot
-
IPXE boot missing NEXT-SERVER
I have FOG setup and working but since I am using it in my home network, I prefer to keep the DHCP functionality of my FIOS router. Since I don’t want to use the DHCP functionality of the FOG server, I setup DNSMASQ so that it intercepts TFTP and points it to my FOG server. That is all working, and IPXE is successfully taking over and booting. The problem I’m running into is that IPXE is still prompting for the TFTP ip address. I know this normally happens when there is more than one DHCP server in the network, but I verified that the only DHCP server is the FIOS router. After disabling the FIOS DHCP, netbooting never gets past asking for an ip address.
I also created a FOG boot entry that executes CONFIG and it does show that the NEXT-SERVER setting is correctly setup. I can’t figure out why it still prompts on every boot. Any ideas? Below are the contents of my /etc/dnsmasq.d/ltsp.conf
although I’m not it is relevant since it is correctly handing over the boot to IPXE.port=0 log-dhcp tftp-root=/tftpboot dhcp-boot=undionly.kpxe,192.168.1.5 dhcp-boot=default.ipxe,192.168.1.5 dhcp-option=17,/var/www/html # dhcp-option=pxe,66,192.168.1.5 # dhcp-option=66,192.168.1.5 dhcp-option=vendor:PXEClient,6,2b dhcp-no-override pxe-prompt=.Press F8 for boot menu., 3 pxe-service=X86PC, .Boot from network., undionly.kpxe # pxe-service=X86PC, .Boot from local hard disk., 0 dhcp-range=192.168.1.5,proxy,255.255.255.0
[Mod note] I fixed the post by including the config file in a code block