simple PXE tutorial
-
Hello,
To create a custom PXE menu, set up a TFTP server, and configure DHCP options for PXE boot. Use FOG Project to upload ISO files of diagnostics or live CDs to the server, then modify the PXE menu to include these images. Ensure your network environment supports PXE booting for technicians to access the diagnostics and recovery tools.
-
@Jackalcorn said in simple PXE tutorial:
To create a custom PXE menu, set up a TFTP server, and configure DHCP options for PXE boot. Use FOG Project to upload ISO files of diagnostics or live CDs to the server, then modify the PXE menu to include these images. Ensure your network environment supports PXE booting for technicians to access the diagnostics and recovery tools.
I have a working TFTP server, and DHCP options work for PXE boot before posting my question. We have been using FOG successfully for years at our University, including everything already in the PXE menu by default, as well as imaging in unicast and multicast. When you say “modify the PXE menu to include these images” do you happen to have some sample code that works in FOG 1.5.10 for this? That is what I am after, a working example for FOG version 1.5.10. I’ve read thru all the fog WIKI and documentation, as well as all the forum posts I could find.
How do you use “FOG Project” itself to upload ISO files to the server? It was my understanding that you use a (t)ftp server, or plain scp. I didn’t see any uploader in the GUI specifically for ISO’s/PXE.
Thanks.
-
@dvorak OK I looked into this quickly. With the download from Dell you can create an iso image and a usb drive image (.img) file. You can probably use memdisk to boot this 32 bit image. Its small and DOS based (appears)
Something like
kernel memdisk initrd diags.iso
Those files should go into /var/www/html/fog/service/ipxe directory. memdisk should already be on the fog server. Its either in the path above or in /tftpboot the iso needs to go in the same location as memdisk.
I have a tutorial on using FOG to pxe boot different operating systems: https://forums.fogproject.org/topic/10944/using-fog-to-pxe-boot-into-your-favorite-installer-images
You can get an idea how to use memdisk in step 18 here: https://forums.fogproject.org/post/142041
-
@george1421 Thanks a lot. I will report back shortly with the results. I was just able to finally get one image to work, the System Rescue CD using this guide:
https://forums.fogproject.org/topic/15295/here-config-for-systemrescuecd-8?sort=oldest_to_newestAlthough the above was posted in 2021, and though it was for System Rescue CD version 8, the latest version 10.01 works fine with Fog 1.5.10.
As for my environment, I am running a RHEL server in vmware that only job is FOG.
To get the System Rescue CD to work I used “/tftpboot/os/RescueCD/10.01-amd64” instead of the “/var/www/utils/systemrescuecd/” that the above guide used. Here are the PXE parameters that are working for me:
kernel tftp://${fog-ip}/os/RescueCd/10.01-amd64/sysresccd/boot/x86_64/vmlinuz archisobasedir=sysresccd ip=dhcp archiso_http_srv=http://${fog-ip}/os/RescueCd/10.01-amd64/ checksum initrd tftp://${fog-ip}/os/RescueCd/10.01-amd64/sysresccd/boot/intel_ucode.img initrd tftp://${fog-ip}/os/RescueCd/10.01-amd64/sysresccd/boot/amd_ucode.img initrd tftp://${fog-ip}/os/RescueCd/10.01-amd64/sysresccd/boot/x86_64/sysresccd.img imgargs copytoram boot || goto MENU
note the old versions of System Rescue CD used “imgargs docache” but according to System Rescue CD website:
copytoram causes SystemRescue to be fully loaded into memory. This corresponds to the docache option in previous versions. A slower start but once complete, the system will be more responsive and also it will not require the original device to run. It means you can actually work on the device where SystemRescue is installed. This requires 2GB of memory to cache the system.
Again, thank you so much. I have been fighting with this for 2 days, and finally have some success (other than knowing what does NOT work… lol).
-
@Jackalcorn said in simple PXE tutorial:
Hello,
To create a custom PXE menu, set up a TFTP server, and configure DHCP options for PXE boot. Use FOG Project to upload ISO files of diagnostics or live CDs to the server, then modify the PXE menu to include these images. Ensure your network environment supports PXE booting for technicians to access the diagnostics and recovery tools.
Is this information was helpful for you or not?
-
@Jackalcorn I am still awaiting your response to the questions I asked you previously. Until then, I would have to say that the information you provided was not helpful, and in fact made me more confused and in a worse position than when I started, having second guessed what I already thought I knew.
If you are able to answer the questions I asked prior please feel free to answer so I as well as others may learn from your wisdom.
All the best,
-
@george1421 see, the issue is when I run that, I get something like this
tftp://(my fog ip)/memdisk... ok Could not select: EXEC format error (https://ipxe.org/2e008081) Could not boot: Exec format error (ipxe) Could not boot: Exec format error (https:)
When looking at the ISO, mounting or unzipping it’s just a CD.txt file (there was a [BOOT] folder but it doesn’t show in linux, and seems the ISO is made in way proprietary to DELL/windows. Inside that folder is a Boot-HardDisk.img with has one file, 0.fat inside. I did not see any .efi, BCD, or other files)
I have the .img version extracted to a folder, but not sure what to point things to in this case
there’s files like:
AUTOEXEC.BAT
COMMAND.COM
CONFIG.SYS
DELLBIO.BIN
DELLDIAG.INI
DIAK1
DISK2
DISK3
DISKS.BAT
GUI.EXE
HIMEM.SYS
RAMDRIVE.SYSwith nothing really in DELLDIAG.INI.
Until further advise, I will probably move on to more regular PXE boot options, like trying to get the WinPE going as we could use a winblows environment (The one I got working, System Rescue CD is a *nix environment)
-
@dvorak OK that iso image seems to be only a legacy/bios boot media. I would be interesting if you burned that to a CD, if it actually would boot. I also saw that cd.txt message and thought it was strange.
So when you run the dell downloaded tool It gives you the option to create an iso and .img file. You can look at the .img file using 7-zip. I would look to see in that .img file if there is a /EFI directory, if no then its bios only. You might be able to use memdisk to run the .img file too.
Were did you find the memdisk program, in /tftpboot? I don’t have a fog server in front of me at the moment so I can’t answer my own question.
-
@dvorak If this route doesn’t work I still have a trick up my sleeves.
Create a custom winpe image and boot that using iPXE. This/then would support both bios and uefi booting. The trick with a custom winpe image is that the executable need to be on/in the winpe image when it boots. I have instructions on this too, but lets see if we can get the dell delivered format to work.
-
@george1421 Thanks a ton for those words (OK that iso image seems to be only a legacy/bios boot media.)
I figured out one thing I was doing very wrong.
I was PXE booted in UEFI… when hitting F12 to boot the PC, I automatically selected the IPV4 under UEFI, and not the “network boot” under legacy, both of which show up in my F12 menu. Both of which FOG PXE boot works with.Well, after using the legacy, the dell iso image (that only shows CD.txt) works flawlessly. Now I think everything will work that requires legacy for me, as some things seems you can’t use PXE UEFI with (perhaps not supported by the manufacturer, some programs like Memtest require spending thousands of dollars to get the “site edition” that works with PXE, etc). Keeping in mind your words in other posts about the size limitations of isos (2gb?), the ones I wish to use should all be small enough. I think we can mark this as solved.
Thanks so much for your help.
-
-