Chainloading Failed on All Models on 5 different servers



  • Server
    • FOG Version: 1.3-RC11 - 5956
    • OS: CentOS 6
    Client
    • Service Version: Version provided by this revision
    • OS: Windows 10
    Description

    I just upgraded several of the servers from an older SVN revision to the current one in the repository and now I’m getting a chainloading error on all of our computers we try to image with it. We select “deploy image” and get a chainloading failed. I have verified that we have undionly.kpxe as the boot file in our Windows DHCP server and the exit type that is set is SANBOOT, but I tried changing it to both GRUB and EXIT with no dice. These machines are using Legacy boot, rather than UEFI.



  • @Wayne-Workman
    Not sure how its working for you. I upgrades 5 different imaging servers and they all have the same problem. The only thing that I change is unassigning the image. I remove the default image, it breaks. I reassign it, it works again. I can replicated this several times with several different hosts. I’d be happy to dig if someone has any idea where it could be happening. We are working around it for now, though.


  • Moderator

    I just tried to confirm this bug, I am using RC-11 at home, I unassigned the image from a computer and then booted it up, it booted to the network fine and then exited to the HDD just fine.

    I’m not doubting what you’re saying happened, but it’s probably something else. What else did you change besides the image?


  • Senior Developer

    @Kris-Phillips When I’m referring to working-RC-12 (Or any working for that matter), it’s not pushed immediately to the “base” repositories. This is because we’re in RC Cycles. So what I’m working on will not be just used for the whole. If you NEED to see this working, you can install but I’d recommend against it because the methodology in use is more or less an attempt to limit the confusion of how one person is working while another is not.



  • @Tom-Elliott Thanks! I’ll pull the latest SVN and see how it does. Should be able to report back on Monday whether this change fixes it or not.

    [EDIT]

    Just tried pulling from the SVN and it still says I’m on the current version. I’ll wait until Monday to try and pull again, as I’m assuming there is a bit of a delay in this getting pushed to the SVN.


  • Senior Developer

    I’m assuming by “Version 5956” you’re referring to the SVN Revision number which would mean the version of FOG You’re running now is 1.3.0-RC-11.

    That said, this should prevent further issues:

    https://github.com/FOGProject/fogproject/commit/0c4e91464d340665feaea1bc2ffb7fc2ee5c2031


  • Senior Developer

    You say in the latest version but you’re running 5956?


  • Senior Developer

    @Wayne-Workman this is only happening because a task was created ?


  • Moderator

    @Kris-Phillips said in Chainloading Failed on All Models on 5 different servers:

    If a machine doesn’t have a default image assigned to it, it gives the chainloading failed message. However, when I go into the host on the web UI and assign a default image to it, it no longer has this issue.

    Because of that, I’m moving this to bug reports. Can @Moderators or @Testers confirm please? It should be simple and quick. I’m unable to at the moment.



  • Tom,

    My original post has the version. Its 5956. The “Version provided by this revision” is the FOG agent for the client PC’s I’m referring to. I didn’t figure it applied, since we’re talking about imaging and not the FOG agent.

    The output of the HTTP request you gave me is what I posted earlier. Are you asking me to do it again or something with a different host?
    I’ve looked at the command 2-3 times and it looks exactly the same as what was asked of me to post earlier.

    Here is the output of my default.ipxe:

    #!ipxe
    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 manufacturer ${product}
    param ipxever ${version}
    param filename ${filename}
    isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme
    isset ${net2/mac} && param mac2 ${net2/mac} || goto bootme
    :bootme
    chain http://10.10.31.25/fog/service/ipxe/boot.php##params
    

  • Senior Developer

    What is output if you go to:

    http://10.10.31.25/fog/service/ipxe/boot.php?mac=<mac_address_ofsystem_registered> and press enter?

    You’ll notice the syntax is nearly identical to @george1421 but this time implicitely calling what I imagine is the url data is being routed to.

    If you can please also post the output of:

    cat /tftpboot/default.ipxe


  • Senior Developer

    @Kris-Phillips This almost seems like it’s looking at the wrong place to get iPXE information. What is “in the latest version” exactly? What version of FOG are you running as it displays next and/or in the cloud on the GUI?



  • Here you go! I also unassigned the image and verified that it was broken again by trying to boot.

    #!ipxe
    set fog-ip 10.10.31.25
    set fog-webroot fog
    set boot-url http://${fog-ip}/${fog-webroot}
    cpuid --ext 29 && set arch x86_64 || set arch i386
    goto get_console
    :console_set
    colour --rgb 0x00567a 1 ||
    colour --rgb 0x00567a 2 ||
    colour --rgb 0x00567a 4 ||
    cpair --foreground 7 --background 2 2 ||
    goto MENU
    :alt_console
    cpair --background 0 1 ||
    cpair --background 1 2 ||
    goto MENU
    :get_console
    console --picture http://10.10.31.25/fog/service/ipxe/bg.png --left 100 --right 80 && goto console_set || goto alt_console
    :MENU
    menu
    colour --rgb 0x00567a 0 ||
    cpair --foreground 1 1 ||
    cpair --foreground 0 3 ||
    cpair --foreground 4 4 ||
    item --gap Host is registered as AP1022!
    item --gap -- -------------------------------------
    item fog.local Boot from hard disk
    item fog.memtest Run Memtest86+
    item fog.keyreg Update Product Key
    item fog.deployimage Deploy Image
    item fog.multijoin Join Multicast Session
    item fog.quickdel Quick Host Deletion
    item fog.sysinfo Client System Information (Compatibility)
    item fog.advancedlogin Advanced Menu
    choose --default fog.local --timeout 10000 target && goto ${target}
    :fog.local
    sanboot --no-describe --drive 0x80 || goto MENU
    kernel bzImage32 loglevel=4 initrd=init_32.xz root=/dev/ram0 rw ramdisk_size=127000 web=10.10.31.25/fog/ consoleblank=0 rootfstype=ext4 loglevel=4
    imgfetch init_32.xz
    boot || goto MENU
    :fog.memtest
    kernel memdisk iso raw
    initrd memtest.bin
    boot || goto MENU
    kernel bzImage32 loglevel=4 initrd=init_32.xz root=/dev/ram0 rw ramdisk_size=127000 web=10.10.31.25/fog/ consoleblank=0 rootfstype=ext4 loglevel=4
    imgfetch init_32.xz
    boot || goto MENU
    :fog.keyreg
    login
    params
    param mac0 ${net0/mac}
    param arch ${arch}
    param username ${username}
    param password ${password}
    param keyreg 1
    isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme
    isset ${net2/mac} && param mac2 ${net2/mac} || goto bootme
    :fog.deployimage
    login
    params
    param mac0 ${net0/mac}
    param arch ${arch}
    param username ${username}
    param password ${password}
    param qihost 1
    isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme
    isset ${net2/mac} && param mac2 ${net2/mac} || goto bootme
    :fog.multijoin
    login
    params
    param mac0 ${net0/mac}
    param arch ${arch}
    param username ${username}
    param password ${password}
    param sessionJoin 1
    isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme
    isset ${net2/mac} && param mac2 ${net2/mac} || goto bootme
    :fog.quickdel
    login
    params
    param mac0 ${net0/mac}
    param arch ${arch}
    param username ${username}
    param password ${password}
    param delhost 1
    isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme
    isset ${net2/mac} && param mac2 ${net2/mac} || goto bootme
    :fog.sysinfo
    kernel bzImage32 loglevel=4 initrd=init_32.xz root=/dev/ram0 rw ramdisk_size=127000 web=10.10.31.25/fog/ consoleblank=0 rootfstype=ext4 loglevel=4 mode=sysinfo
    imgfetch init_32.xz
    boot || goto MENU
    :fog.advancedlogin
    login
    params
    param mac0 ${net0/mac}
    param arch ${arch}
    param username ${username}
    param password ${password}
    param advLog 1
    isset ${net1/mac} && param mac1 ${net1/mac} || goto bootme
    isset ${net2/mac} && param mac2 ${net2/mac} || goto bootme
    :bootme
    chain -ar http://10.10.31.25/fog/service/ipxe/boot.php##params ||
    goto MENU
    autoboot
    

    Modded to use code tag


  • Moderator

    @Kris-Phillips Can you do this for us?

    Remove the image, or register a new host, but don’t assign an image to it.

    Then from a browser key in http://<fog_server_ip>/fog/service/ipxe/boot.php?mac=<mac_address_of_system_registered> and press enter. That should create the ipxe boot menu in the browser. If you are doing this on a deploy image task then deploy the image and do the above step. The developers will probably need to see where its breaking in the iPXE menu (even though this is through a deploy, ipxe is used on bootup then it loads the FOS Engine to deploy the image).



  • Attached is the image.

    I think I found a bug, though, in the latest version. If a machine doesn’t have a default image assigned to it, it gives the chainloading failed message. However, when I go into the host on the web UI and assign a default image to it, it no longer has this issue.

    Error Message


  • Moderator

    Can you give us a photo of the error, please include the full screen and try to make it focused and without a big light glare so we can read what it says.


Log in to reply
 

Looks like your connection to FOG Project was lost, please wait while we try to reconnect.