• Recent
    • Unsolved
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    IPXE Advanced Menu or Memdisk Problem

    Scheduled Pinned Locked Moved
    General
    6
    26
    20.6k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Tom ElliottT
      Tom Elliott
      last edited by

      In the advanced.php file we already have a setting that gets your systems ip and webroot.
      The start of the file is:
      [code]print “#!ipxe\n”;
      print “console\n”;
      print “set fog-ip “.$FOGCore->getSetting(‘FOG_WEB_HOST’).”\n”;
      print “set fog-webroot “.basename($FOGCore->getSetting(‘FOG_WEB_ROOT’)).”\n”;[/code]

      What does this mean? You don’t need to set the same fields unless you’re trying to point it another server. The only exception would be the boot url with:
      [code]set boot-url http://${fog-ip}/${fog-webroot}[/code]

      So your code as below:
      [code]
      set fog-server IP-ADDRESS
      set boot-url http://IP-ADDRESS/fog/

      :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 http://IP-ADDRESS/fog/service/ipxe/VMware/TinyCORE.iso raw
      kernel http://IP-ADDRESS/fog/service/ipxe/memdisk
      boot

      :DellDiag
      initrd http://IP-ADDRESS/fog/service/ipxe/DellDiagnostics/DellDiag-7.iso
      kernel http://IP-ADDRESS/fog/service/ipxe/memdisk 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[/code] Should “work” but I don’t know where it’s failing specifically. The nice part is you probably are calling the wrong method: Memdisk should always call the type of file and method (e.g. iso raw) So I’d try this:
      [code]set boot-url http://IP-ADDRESS/fog/
      :MENU
      menu
      item --gap – City of Lewiston - Imaging and Diagnostics
      item VMware VMware - Live
      item DellDiag Dell Diagnostics
      item hostinfo Host Informaton (Your Machine Info)
      choose fog-opt target && goto ${target}
      :VMware
      initrd ${boot-url}/service/ipxe/VMware/TinyCORE.iso
      chain ${boot-url}/service/ipxe/memdisk raw iso
      boot
      :DellDiag
      initrd ${boot-url}/service/ipxe/DellDiagnostics/DellDiag-7.iso
      chain ${boot-url}/service/ipxe/memdisk 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[/code]

      Hopefully this helps. Remember that the || means OR that. So your hostinfo would only print This computer: MAC Address…${net0/mac} OR IP Address OR Netmask OR Serial only as things failed.

      Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

      Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

      Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

      1 Reply Last reply Reply Quote 0
      • JunkhackerJ
        Junkhacker Developer
        last edited by

        minor correction for tom: each line of the ipxe file is seen as a new command, so the || at the end of a line only meand ‘do this’ “or” ‘nothing’
        if ‘do this’ fails, this is a failure to execute a command, if there is a “or” ‘nothing’ then the line is a success, because it successfully does nothing.
        each line after a ||
        will be executed

        signature:
        Junkhacker
        We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

        1 Reply Last reply Reply Quote 0
        • D
          Danny Santiago
          last edited by

          Thank you to both of you. Good education. Although using the code copied from Tom with the IP-ADDRESS filled in I have a new problem. the advanced menu doesn’t appear any more. the screen flashes and returns to the standard menu. 😞 Is there a walk through or instructional guide available for the current release on how to set an ISO as a boot-able option? I am guessing not or you would have sent me that way already.

          1 Reply Last reply Reply Quote 0
          • D
            Danny Santiago
            last edited by

            Side note I was playing around with the iso and raw options as you can see where the DellDiag option had it and the VMware one didn’t I was hoping to find the magic combination but was unsuccessful.

            1 Reply Last reply Reply Quote 0
            • JunkhackerJ
              Junkhacker Developer
              last edited by

              just this one [url]http://fogproject.org/forum/threads/fog-0-33b-edit-pxe-menu.10403/#post-26420[/url]

              signature:
              Junkhacker
              We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

              1 Reply Last reply Reply Quote 0
              • JunkhackerJ
                Junkhacker Developer
                last edited by

                let’s try this again
                [CODE]
                set boot-url http://${fog-ip}/${fog-webroot}
                :MENU
                menu
                item --gap – 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}/service/ipxe/VMware/TinyCORE.iso
                chain memdisk iso raw ||
                echo failed to boot
                prompt
                goto MENU

                :DellDiag
                initrd ${boot-url}/service/ipxe/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
                goto MENU
                [/CODE]

                signature:
                Junkhacker
                We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

                1 Reply Last reply Reply Quote 0
                • D
                  Danny Santiago
                  last edited by

                  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.

                  1 Reply Last reply Reply Quote 0
                  • D
                    Danny Santiago
                    last edited by

                    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.

                    1 Reply Last reply Reply Quote 0
                    • JunkhackerJ
                      Junkhacker Developer
                      last edited by

                      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

                      signature:
                      Junkhacker
                      We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

                      1 Reply Last reply Reply Quote 0
                      • A
                        Andy Morris
                        last edited by

                        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?

                        1 Reply Last reply Reply Quote 0
                        • A
                          Andy Morris
                          last edited by

                          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

                          1 Reply Last reply Reply Quote 0
                          • Tom ElliottT
                            Tom Elliott
                            last edited by

                            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]

                            Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                            Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                            Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                            1 Reply Last reply Reply Quote 0
                            • Tom ElliottT
                              Tom Elliott
                              last edited by

                              Ahhhh,

                              Yeah, it fails loading the console picture.

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

                              Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                              Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                              Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                              1 Reply Last reply Reply Quote 0
                              • A
                                Andy Morris
                                last edited by

                                That worked!!! Thanks a ton!

                                Andy

                                1 Reply Last reply Reply Quote 0
                                • A
                                  Andy Morris
                                  last edited by

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

                                  Thanks,
                                  Andy Morris

                                  1 Reply Last reply Reply Quote 0
                                  • Tom ElliottT
                                    Tom Elliott
                                    last edited by

                                    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.

                                    Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                                    Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                                    Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                                    1 Reply Last reply Reply Quote 0
                                    • A
                                      Andy Morris
                                      last edited by

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

                                      Andy

                                      1 Reply Last reply Reply Quote 0
                                      • A
                                        Andy Morris
                                        last edited by

                                        That works!! Thanks again.

                                        1 Reply Last reply Reply Quote 0
                                        • E
                                          Eli Kelly
                                          last edited by

                                          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]

                                          1 Reply Last reply Reply Quote 0
                                          • JunkhackerJ
                                            Junkhacker Developer
                                            last edited by

                                            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]

                                            signature:
                                            Junkhacker
                                            We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

                                            1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 1 / 2
                                            • First post
                                              Last post

                                            171

                                            Online

                                            12.0k

                                            Users

                                            17.3k

                                            Topics

                                            155.2k

                                            Posts
                                            Copyright © 2012-2024 FOG Project