IPXE Advanced Menu or Memdisk Problem



  • I am not sure if I have my advanced menu written poorly or if I have a problem with my memdisk file. I tried another memdisk file provided in another post

    [url]http://fogproject.org/forum/threads/pxe-boot-goldmemory.12/[/url]

    This had no change. Below is my Advanced menu script and below that I will include my error message.

    #/ Begin Boot Menu. the Pound and slash are not part of the menu script
    set fog-server IP-ADDRESS
    set boot-url [url]http://IP-ADDRESS/fog/[/url]

    :start-http
    menu City of Lewiston - Imaging and Diagnostics

    item VMware VMware - Live
    item DellDiag Dell Diagnostics
    item hostinfo Host Informaton (Your Machine Info)

    #item foginfo FOG system info

    choose fog-opt && goto ${fog-opt}

    :VMware
    initrd [url]http://IP-ADDRESS/fog/service/ipxe/VMware/TinyCORE.iso[/url] raw
    kernel [url]http://IP-ADDRESS/fog/service/ipxe/memdisk[/url]
    boot

    :DellDiag
    initrd [url]http://IP-ADDRESS/fog/service/ipxe/DellDiagnostics/DellDiag-7.iso[/url]
    kernel [url]http://IP-ADDRESS/fog/service/ipxe/memdisk[/url] iso raw ||
    boot

    :hostinfo
    echo This computer : ||
    echo MAC address…${net0/mac} ||
    echo IP address…${ip} ||
    echo Netmask…${netmask} ||
    echo Serial…${serial} ||
    echo Asset number…${asset} ||
    echo Manufacturer…${manufacturer} ||
    echo Product…${product} ||
    echo BIOS platform…${platform} ||
    echo ||
    echo press any key to return to Menu ||
    prompt

    goto MENU

    /#end menu

    MEMDISK: Image has fraction end sector
    MEMDISK: Image seems to have fractional end cylinder
    Disk is hd0, 37038 k, C/H/S = 36/64/32 (guess/guess), EDD on, rw
    Using safe INT 15h access to high memory
    Total size needed = 2381 bytes, allocating 3K
    Old dos memory at 0x8e400 (map says 0e8400), loading at 0x8d800
    1588: 0xffff 15E801: 0x3c00 0x7b17
    INT 13 08: Success, count = 2, BPT = 0000:0000
    old: int13 = 8e40000a int15 = 8e40037f int1e = f000efc7
    new: int13 = 8d40000a int15 = 8d80037f int1e = f000efc7
    Loading boot sector… booting… <------ This is where the machine will hang forever.

    I can’t seem to make it past this part.

    any help would be appreciated and an education would be even more appreciated! :)

    Note to the Developers:

    Awesome Product and Service you provide. Just plain incredible.


  • Developer

    it changes how ipxe attempts to exit and allow the computer to the hard drive. different bios may require different methods to boot properly



  • What does the “Exit to Hard Drive Type” do/change?



  • My issue is fixed. I posted my update in the wrong thread. The full answer is here:
    [URL=‘http://fogproject.org/forum/threads/fog-0-33b-edit-pxe-menu.10403/page-2#post-30033’]http://fogproject.org/forum/threads/fog-0-33b-edit-pxe-menu.10403/page-2#post-30029[/URL]

    Basically my advanced.php was out of date and wasn’t being updated in svn updates. Hard coding my server IP fixed advanced menus for me.


  • Senior Developer

    [quote=“Eli Kelly, post: 29865, member: 1152”]Hmm… I’ve tried clearing the field and retyping from scratch and still the same issue persists.

    I also tried just typing basic commands in the field:

    [CODE]echo hello world[/CODE]
    [CODE]shell[/CODE]

    I even tried to change the background to something obvious…
    [CODE]cpair --foreground 3 --background 6 0[/CODE]

    No matter what I put in the Advance Menu Code field the result is still a blue background with the default menu list

    As expected if I leave the field blank the Advance Menu option is not listed on the default menu. Same result with svn 1801. Perhaps I will roll up my sleeves and dig into /var/www/html/fog/service/ipxe/advanced.php

    Appreciate any guidance.

    Thanks

    Eli[/quote]

    I’d start here:
    [code]:MENU
    menu
    item --gap – ---------------- iPXE boot menu ----------------
    item ipxedemo ipxe online boot demo
    item shell ipxe shell
    item return return to previous menu
    choose --default return --timeout 5000 target && goto ${target}

    :ipxedemo
    chain http://boot.ipxe.org/demo/boot.php ||
    goto MENU

    :shell
    shell ||
    goto MENU

    :return
    chain http://${fog-ip}/${fog-webroot}/service/ipxe/boot.php?mac=${net0/mac} ||
    ############prompt###################
    goto MENU

    autoboot
    [/code]

    Remove the prompt because it doesn’t know how to interpret the prompt itself is what I’m guessing. Maybe you wanted:
    [code]
    :return
    chain http://${fog-ip}/${fog-webroot}/service/ipxe/boot.php?mac=${net0/mac} || prompt && goto MENU
    [/code]

    The || and a new line just tells iPXE to if it fails, do nothing successfully, which it’s doing, but it doesn’t know how to pass back. It could also be the :MENU setting, but that shouldn’t matter too much.



  • Hmm… I’ve tried clearing the field and retyping from scratch and still the same issue persists.

    I also tried just typing basic commands in the field:

    [CODE]echo hello world[/CODE]
    [CODE]shell[/CODE]

    I even tried to change the background to something obvious…
    [CODE]cpair --foreground 3 --background 6 0[/CODE]

    No matter what I put in the Advance Menu Code field the result is still a blue background with the default menu list

    As expected if I leave the field blank the Advance Menu option is not listed on the default menu. Same result with svn 1801. Perhaps I will roll up my sleeves and dig into /var/www/html/fog/service/ipxe/advanced.php

    Appreciate any guidance.

    Thanks

    Eli


  • Developer

    check for typo’s and/or hidden symbols from copying and pasting. ipxe is very picky
    [url]http://www.fogproject.org/wiki/index.php/Advanced_Boot_Menu_Configuration_options[/url]



  • I’m still experiencing Advanced Menu selection issue mentioned by Danny and Andy. Screen flickers and default menu appears with blue background.

    Tested with svn 1783 and 1799

    I will update the subversion again now to see if there is any difference.

    I’ve been using Junkhackers sample code from [URL=‘http://fogproject.org/forum/threads/fog-0-33b-edit-pxe-menu.10403/#post-26419’]this post[/URL]

    menu
    item --gap – ---------------- iPXE boot menu ----------------
    item ipxedemo ipxe online boot demo
    item shell ipxe shell
    item return return to previous menu
    choose --default return --timeout 5000 target && goto ${target}

    :ipxedemo
    chain [url]http://boot.ipxe.org/demo/boot.php[/url] ||
    goto MENU

    :shell
    shell ||
    goto MENU

    :return
    chain [url]http://${fog-ip}/${fog-webroot}/service/ipxe/boot.php?mac=${net0/mac}[/url] ||
    prompt
    goto MENU

    autoboot[/FONT]



  • That works!! Thanks again.



  • Just wanted to protect the items like it did in .32. I will take a look.
    Thanks,

    Andy


  • Senior Developer

    Yes, and no.

    The password “options” are no longer using md5pass as they once where.

    The easiest method would be to add login prompts.

    I don’t know much more about all the details you’d need though.



  • Is there anyway to add the password option to these advanced items like in version .32?

    Thanks,
    Andy Morris



  • That worked!!! Thanks a ton!

    Andy


  • Senior Developer

    Ahhhh,

    Yeah, it fails loading the console picture.

    This is now fixed in SVN. Please update and sorry about that.


  • Senior Developer

    the ${boot-url} parameter already sets the http part of the url. So try this below:

    menu
    item --gap – ---------------- iPXE boot menu ----------------
    item WIN7PE64BIT Win7 64bit Recovery Console
    item WIN7PE32BIT Win7 32bit Recovery Console
    item BOOTCD Hirens BootCD
    item shell ipxe shell
    item return return to previous menu
    choose --default WIN7PE64BIT --timeout 5000 target && goto ${target}

    :WIN7PE64BIT
    initrd ${boot-url}/MenuItems/Win7-64bit/7rd64.iso
    chain ${boot-url}/MenuItems/Win7-64bit/memdisk iso raw
    goto MENU

    :WIN7PE32BIT
    initrd ${boot-url}/MenuItems/Win7-32bit/7rd32.iso
    chain memdisk iso raw ||
    goto MENU

    :BOOTCD
    initrd ${boot-url}/MenuItems/bootcd/bootcd14.iso
    chain memdisk iso raw ||
    goto MENU

    :ipxedemo
    chain http://boot.ipxe.org/demo/boot.php ||
    goto MENU

    :shell
    shell ||
    goto MENU

    :return
    chain http://${fog-ip}/${fog-webroot}/service/ipxe/boot.php?mac=${net0/mac} ||
    prompt
    goto MENU

    autoboot[/code]



  • here is my code…

    :MENU
    menu
    item --gap – ---------------- iPXE boot menu ----------------
    item WIN7PE64BIT Win7 64bit Recovery Console
    item WIN7PE32BIT Win7 32bit Recovery Console
    item BOOTCD Hirens BootCD
    item shell ipxe shell
    item return return to previous menu
    choose --default WIN7PE64BIT --timeout 5000 target && goto ${target}

    :WIN7PE64BIT
    initrd [url]http://${boot-url}/MenuItems/Win7-64bit/7rd64.iso[/url]
    chain [url]http://${boot-url}/MenuItems/Win7-64bit/memdisk[/url] iso raw
    goto MENU

    :WIN7PE32BIT
    initrd [url]http://${boot-url}/MenuItems/Win7-32bit/7rd32.iso[/url]
    chain memdisk iso raw ||
    goto MENU

    :BOOTCD
    initrd [url]http://${boot-url}/MenuItems/bootcd/bootcd14.iso[/url]
    chain memdisk iso raw ||
    goto MENU

    :ipxedemo
    chain [url]http://boot.ipxe.org/demo/boot.php[/url] ||
    goto MENU

    :shell
    shell ||
    goto MENU

    :return
    chain [url]http://${fog-ip}/${fog-webroot}/service/ipxe/boot.php?mac=${net0/mac}[/url] ||
    prompt
    goto MENU

    autoboot



  • I have the same issue with the Advanced Menu. If i choose the Advanced Menu it just flashes, the screen turns blue and has the default menu back on the screen. I had this working in version 1.0.1 and had to update to the latest 1.1.0 trunk to get my snapins to work. Not sure where to go from here. Any ideas?


  • Developer

    well, now that you have a basic idea how the ipxe menu system works, i suggest going over to ipxe.org to get more information about your specific boot needs



  • Well I spoke to soon-ish. I can get TinyCore to boot but the GUI for it never loads it just boots into a terminal. on the same note the other items I have set to boot which all have the same settings just flash the menu screen back up. They don’t want to actually boot. :/ bummer.



  • It Worked! Your Awesome.

    [CODE]set boot-url http://${fog-ip}/${fog-webroot}
    :start-http
    menu City of Lewiston - Imaging and Diagnostics

    item VMware VMware - Live
    item DellDiag Dell Diagnostics
    item hostinfo Host Informaton (Your Machine Info)
    choose target && goto ${target}

    :VMware
    initrd ${boot-url}/ISO/VMware/TinyCORE.iso
    chain memdisk iso raw ||
    echo failed to boot
    prompt
    goto MENU

    :DellDiag
    initrd ${boot-url}/ISO/DellDiagnostics/DellDiag-7.iso
    chain memdisk iso raw ||
    echo failed to boot
    prompt
    goto MENU

    :hostinfo
    echo This computer : ||
    echo MAC address…${net0/mac} ||
    echo IP address…${ip} ||
    echo Netmask…${netmask} ||
    echo Serial…${serial} ||
    echo Asset number…${asset} ||
    echo Manufacturer…${manufacturer} ||
    echo Product…${product} ||
    echo BIOS platform…${platform} ||
    echo
    echo press any key to return to Menu
    prompt
    MENU[/CODE]

    This worked nicely! I had to change the last MENU prompt from your code. For some reason it would through up a bunch of “stuff” (for lack of my current knowledge or caring as to what it was talking about) and would restart. Once I changed it the screen would refresh after the prompt to the menu. Before after the prompt it would do the restart thing.

    I also changed the main folder for the ISO images to one I noticed you used from your other posts. Made more sense and was easier. I wonder what memdisk file it is pulling up with the chain command compared to the original one where I specified the path.


Log in to reply
 

426
Online

39.3k
Users

11.0k
Topics

104.4k
Posts

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