Edited undionly.kpxe now receive params: command not found
-
Server
- FOG Version: 1.3.0
- OS: CentOS 7
Description
I need to host a Fog and SCCM server on the same network subnet. To achieve this I went through the steps to add a PXE Boot Menu allowing a PXE chain to the FOG server. I used https://rom-o-matic.eu/ to edit the undionly.kpxe to set the fog server address using this script:
#!ipxe
set fogserver x.x.x.x
isset ${net0/mac} && dhcp net0 || goto dhcpnet1
echo Received DHCP answer on interface net0 && goto netboot:dhcpnet1
isset ${net1/mac} && dhcp net1 || goto dhcperror
echo Received DHCP answer on interface net1 && goto netboot:dhcperror
prompt --key s --timeout 10000 DHCP Failed, hit ‘s’ for the iPXE shell; reboot in 10 seconds && shell || reboot:netboot
cpuid --ext 29 && set arch x86_64 || set arch i386
params
param mac0 ${net0/mac}
param arch ${arch}
param platform ${platform}
param product ${product}
param ipxever ${version}
isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme:bootme
chain http://${fogserver}/fog/service/ipxe/boot.php##paramsThe script was kindly provided for me by @george1421
After a few smaller errors (Read: user error) I was able to boot a client into the FOG server only to receive the error: params: command not found.I checked to ensure that #define PARAM_CMD /* Form parameter commands */ was defined in git/fogproject/src/ipxe/src/config/general.h as shown by this post, and it is. Rebooted server to make sure none of my changed required that. Still receiving the error Command not Found. I’m not sure what the next step might be…
-
Just for clarity this OP has both an SCCM and FOG server on the same subnet so that caused conflicting pxe settings. The OP came up with a method using a syslinux menu to select the fog server for deployment. The FOG iPXE kernel gets booting ok, the issue is that the iPXE kernel again queries for the the next server and boot file (which currently point to the OPs syslinux setup which causes the process to break). So the suggestion I provided is to create a custom undionly.kpxe file that points directly to the fog server.
If the pram command is not known then the quickie way of building the iPXE kernel on the rom-o-matic site probably doesn’t include the param function. We are still not dead in the waters here I think we’ll have to go the advanced route with the rom-o-matic.
-
You’ll probably have to do something similar as in this tutorial. https://forums.fogproject.org/topic/6400/usb-boot-uefi-client-into-fog-menu-harder-way
But this one out of the box is for building ipxe.efi by hand and not undionly.kpxe. But you should be able to make the adjustments in the process.
The only real difference is in step 3 and 4 the rest should be the same.
-
@jlober1981 Check out this information in the wiki: https://wiki.fogproject.org/wiki/index.php?title=IPXE#rom-o-matic.eu
I am pretty sure you missed enabling the PARAM_CMD define. Maybe you mix things up? Using rom-o-matic to compile an iPXE binary for you there is no need to edit general.h by hand. It’s just selecting the correct options in the web interface. If you want to compile a binary directly from the official git source code you sure need to edit the header file by hand. From your description I don’t really get which way you are headed.
As well make sure you modify the script George gave you and change
x.x.x.x
in the third line to exactly match your FOG server IP address! -
I followed: https://forums.fogproject.org/topic/6400/usb-boot-uefi-client-into-fog-menu-harder-way to the letter, changing only step 3 (output format) to PXE bootstrap Loader keep (.kpxe) and step 4 (NIC type) to undionly. This leads to a large ipxe.kpxe (338KB) download from https://rom-o-matic.eu which I rename to undionly.kpxe and then upload to my tftpboot folder. Once FOG runs it gives me a Installation Failed notice and no other errors, error codes, or options. I’m really unsure what I’m doing wrong. I need to get this to work on the current infrastructure as changing the network scheme is not an option.
-
@jlober1981 said:
… Once FOG runs it gives me a Installation Failed notice and no other errors, error codes, or options …
Can you please take a picture of that error and post it here. To me it seems like we are talking about different issues here.
-
-
@jlober1981 Just to confirm that 10.0.1.203 is the IP address of your fog server?
I’m back in the office today after traveling last week, so I should be able to create a mock up of this over the lunch hour today. Let me see if I can make it work like I think it should in the test lab.
-
@george1421 said in Edited undionly.kpxe now receive params: command not found:
@jlober1981 Just to confirm that 10.0.1.203 is the IP address of your fog server?
I’m back in the office today after traveling last week, so I should be able to create a mock up of this over the lunch hour today. Let me see if I can make it work like I think it should in the test lab.
Yes 10.0.1.203 is the correct address of the FOG server
-
@jlober1981 Ok the test worked correctly in our test lab.
Some of the settings have changed on the rom-o-matic since that first tutorial was written. Its mostly the same but a few extra options have been added.
Please test this file: 0_1483986244383_gundionly.kpxe and let me know how it works, be aware that I changed the name to gundionly.kpxe to not conflict with the official undionly.kpxe file.
When I tested, I just dropped that file on our test syslinux pxe boot server and then changed the dhcp option 67 to load that file instead of pxelinux.0. It worked right out of the box and loaded the fog pxe menu. I do have to admit I did not try anything past there, but if you can get into the ipxe fog menu that was more than you had before.
If it works correctly in your environment I’ll post the instructions on how to recreate it.
-
@george1421 said in Edited undionly.kpxe now receive params: command not found:
@jlober1981 Ok the test worked correctly in our test lab.
Some of the settings have changed on the rom-o-matic since that first tutorial was written. Its mostly the same but a few extra options have been added.
Please test this file: 0_1483986244383_gundionly.kpxe and let me know how it works, be aware that I changed the name to gundionly.kpxe to not conflict with the official undionly.kpxe file.
When I tested, I just dropped that file on our test syslinux pxe boot server and then changed the dhcp option 67 to load that file instead of pxelinux.0. It worked right out of the box and loaded the fog pxe menu. I do have to admit I did not try anything past there, but if you can get into the ipxe fog menu that was more than you had before.
If it works correctly in your environment I’ll post the instructions on how to recreate it.
Thanks! But I am receiving the same error as shown in the picture.
-
@jlober1981 With what I created?
-
Yes I downloaded your file and received the same error message. Is it perhaps a misconfiguration on my FOG server?
-
TO me, this message appears to be coming from the item that’s booting, not a problem with the ipxe file in use. Maybe we can see what it is that’s booting after the ipxe file get’s loaded?
-
@jlober1981 No I don’t feel that its a fog server issue just yet (You could test by changing /temp/ your dhcp option 66 and 67 to the fog server IP and undionly.kpxe and see if you can boot).
Please tell me a bit more about what you are trying to pxe boot, that system is hanging with the ipxe kernel. I did not test the kernel I posted below, but the only thing I changed was the IP address of your fog server and then recompiled it.
-
@george1421 said in Edited undionly.kpxe now receive params: command not found:
@jlober1981 No I don’t feel that its a fog server issue just yet (You could test by changing /temp/ your dhcp option 66 and 67 to the fog server IP and undionly.kpxe and see if you can boot).
Please tell me a bit more about what you are trying to pxe boot, that system is hanging with the ipxe kernel.
Bear with me as I am quite new to FOG, but I am trying to setup FOG to be able to capture images of new and used Dell Laptops. The ONLY configurations that I have changed on the FOG server is the undionly.kpxe file based on suggestions shown here. If you need more detailed information please specify and I can gladly provide whatever you are looking for to help get this running. Thanks!
-
@jlober1981 First lets take a step back here.
I want you to do this first.
Change your dhcp server options 66 to point to the IP address of your fog server and the dhcp option 67Please ensure you can pxe boot to the fog server.
Second please tell me the mfg and model of the computer you are trying to pxe boot.
-
I successfully booted into the FOG server both by the natively installed undionly.kpxe as well as the version @george1421 had me download. But in order to do so I had to turn off PXE on the SCCM server. If it is easier to create a menu item to point to the sccm server from FOG I am open to this idea as well. I am booting from a Dell Latitude E5470.
-
@jlober1981 When you boot into your syslinux menu with pxelinux.0 you can go to sccm from there? I’m suspecting that sccm is probably using dhcpProxy to send information to the target computer, but I have no evidence of that.
-
@george1421 Yes I can. Here is the code that I use to boot from SCCM
DEFAULT menu.c32
MENU TITLE SCCM PXE ServerLABEL wds
MENU DEFAULT
MENU LABEL SCCM
KERNEL pxeboot.0LABEL linuxpxe
MENU LABEL FOG Image Capture
KERNEL pxechain.com
APPEND 10.0.1.203::undionly.kpxeLABEL abort
MENU LABEL Exit PXE
Kernel abortpxe.0