Updating/Compiling the latest version of iPXE
The iPXE component of the FOG Project server is a vital part of PXE booting into FOG. With rapid advances in hardware, both iPXE (managed by a different FOSS group) and FOG can slip behind the latest hardware. The developers of the FOG Project try to release an updated version of FOG every 18 months. In some cases you can just update the FOS Linux kernel to get support for the latest hardware. Some times you will need to update/compile the latest version of iPXE using your FOG server to get the latest version of iPXE to support pxe booting.
The following steps will walk you through updating iPXE using your current FOG server. Understand this method of (re)compiling iPXE only works if you use the
gitmethod to install FOG. If you installed FOG using the tarball then you will need to wait for the next release of FOG to get the latest iPXE builds.
- PXE boot any computer and record the build code listed on the iPXE banner. The build code is a hex number inside the brackets “()”). We will compare this build code in a later step to ensure your iPXE boot loader files have been updated.
- Navigate to where you downloaded the FOG installers using
git. Depending on which directions you followed these files will be in either
/root. The parent directory we are looking for is called
fogproject. For the remainder of this tutorial I’ll assume the fogproject directory is in the /root directory, you will need to adjust the file paths based on your fogproject path.
- Navigate to
- Run the bash script buildipxe.sh with this command
NOTE: your fog server will need internet access to recompile iPXEIt should take about 10 minutes to recompile iPXE.
- When the compile is done you will be presented with a command prompt once again. Understand the
buildipxe.shscript only compiles the iPXE binaries. It does not install them in your production environment.
- The proper way to update your production environment is to rerun the fog installer using all of the preselected options. Reinstalling fog using the fog installer is not destructive, the installer remembers your previous settings and just updates any new files into your production environment.
- The hacker way to update your production environment is to copy over the updates files to the /tftpboot directory with this command
cp -R /root/fogproject/packages/tftp/* /tftpboot
watch the source path if your git fogproject directory is not in the /root/fogproject directory
- Run the following command to ensure your iPXE files have a current date on them.
ls -la /tftpboot/*.efi
- Now pxe boot the client and confirm that the build code (in the brackets “()”) has changed from the previous step.
Wiki is also edited.
Finally found some time… https://docs.fogproject.org/en/latest/reference/compile_ipxe_binaries.html
Will need to edit the wiki as well: https://wiki.fogproject.org/wiki/index.php?title=IPXE#Compile