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

    chainloading failed advanced menu

    Scheduled Pinned Locked Moved Solved
    FOG Problems
    3
    34
    4.5k
    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.
    • george1421G
      george1421 Moderator
      last edited by george1421

      I did a bit of reverse engineering here: I entered “junk” into that field, then called http://<fog_server_ip>/fog/service/ipxe/advanced.php?mac0=00:00:00:00:00:00&arch=x86_64&username=fog&password=password&advLog=1

      and received this as a iPXE menu, which is an invalid iPXE menu and should create a chain loading error because its not a valid iPXE menu script.

      #!ipxe
      junk
      

      So what does that tell us?

      1. FOG will only display the advanced menu item if that field contains data. With a blank field FOG skips over displaying the iPXE menu.
      2. You probably have a bad iPXE menu data in that field. Which at the moment you can’t edit via the frontend.

      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!

      Scott BS 1 Reply Last reply Reply Quote 0
      • Scott BS
        Scott B @george1421
        last edited by

        @george1421 said in chainloading failed advanced menu:

        I did a bit of reverse engineering here: I entered “junk” into that field, then called http://<fog_server_ip>/fog/service/ipxe/advanced.php?mac0=00:00:00:00:00:00&arch=x86_64&username=fog&password=password&advLog=1

        and received this as a iPXE menu, which is an invalid iPXE menu and should create a chain loading error because its not a valid iPXE menu script.

        #!ipxe
        junk
        

        So what does that tell us?

        1. FOG will only display the advanced menu item if that field contains data. With a blank field FOG skips over displaying the iPXE menu.
        2. You probably have a bad iPXE menu data in that field. Which at the moment you can’t edit via the frontend.

        I’m fine taking the whole menu program back to defaults if anyone can help me do so.

        george1421G 1 Reply Last reply Reply Quote 0
        • george1421G
          george1421 Moderator @Scott B
          last edited by

          @Scott-B If you call the advanced menu as I have defined the URL what do you get? I think we have 2 issues here.

          1. Your advanced menu is not right
          2. You can’t edit it because the field is blank.

          First lets see what your advanced menu looks like.

          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!

          Scott BS 1 Reply Last reply Reply Quote 0
          • Scott BS
            Scott B @george1421
            last edited by

            @george1421 said in chainloading failed advanced menu:

            @Scott-B If you call the advanced menu as I have defined the URL what do you get? I think we have 2 issues here.

            1. Your advanced menu is not right
            2. You can’t edit it because the field is blank.

            First lets see what your advanced menu looks like.

            All I get is

            #!ipxe
            
            george1421G 1 Reply Last reply Reply Quote 0
            • george1421G
              george1421 Moderator @Scott B
              last edited by

              @Scott-B Did you ever have an advanced menu?

              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!

              Scott BS 1 Reply Last reply Reply Quote 0
              • Scott BS
                Scott B @george1421
                last edited by

                @george1421 said in chainloading failed advanced menu:

                @Scott-B Did you ever have an advanced menu?

                Yes. We used to memtest or dban from it.

                1 Reply Last reply Reply Quote 0
                • george1421G
                  george1421 Moderator
                  last edited by george1421

                  OK, the last bit before we need to get the developers involved.

                  From the fog server linux command prompt. Key in the following:

                  mysql -u root -p fog
                  <press enter at password>
                  select * from  globalSettings where settingKey="FOG_PXE_ADVANCED";
                  

                  The output will look similar (but probably line wrapped) to this:

                  MariaDB [fog]> select * from  globalSettings where settingKey="FOG_PXE_ADVANCED";
                  +-----------+------------------+----------------------------------------------------------------------------------------------------+--------------+-------------------+
                  | settingID | settingKey       | settingDesc                                                                                        | settingValue | settingCategory   |
                  +-----------+------------------+----------------------------------------------------------------------------------------------------+--------------+-------------------+
                  |        74 | FOG_PXE_ADVANCED | This setting defines if you would like to append any settings to the end of your PXE default file. | junk         | FOG Boot Settings |
                  +-----------+------------------+----------------------------------------------------------------------------------------------------+--------------+-------------------+
                  1 row in set (0.00 sec)
                  

                  This is the text behind that menu entry. The settings value field is the only important field.

                  You could rewrite the sql query as this to give us only what we are interested in:

                  select settingValue from  globalSettings where settingKey="FOG_PXE_ADVANCED";
                  

                  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!

                  Scott BS 1 Reply Last reply Reply Quote 0
                  • Scott BS
                    Scott B @george1421
                    last edited by

                    @george1421 said in chainloading failed advanced menu:

                    select settingValue from globalSettings where settingKey=“FOG_PXE_ADVANCED”;

                    mysql> select * from  globalSettings where settingKey="FOG_PXE_ADVANCED";
                    +-----------+------------------+----------------------------------------------------------------------------------------------------+--------------+-------------------+
                    | settingID | settingKey       | settingDesc                                                                                        | settingValue | settingCategory   |
                    +-----------+------------------+----------------------------------------------------------------------------------------------------+--------------+-------------------+
                    |        74 | FOG_PXE_ADVANCED | This setting defines if you would like to append any settings to the end of your PXE default file. |              | FOG Boot Settings |
                    +-----------+------------------+----------------------------------------------------------------------------------------------------+--------------+-------------------+
                    1 row in set (0.00 sec)
                    
                    mysql> select settingValue from  globalSettings where settingKey="FOG_PXE_ADVANCED";
                    +--------------+
                    | settingValue |
                    +--------------+
                    |              |
                    +--------------+
                    1 row in set (0.10 sec)
                    
                    mysql>
                    
                    george1421G 1 Reply Last reply Reply Quote 0
                    • george1421G
                      george1421 Moderator @Scott B
                      last edited by

                      @Scott-B Well somewhere along the way there is no advanced menu defined. We are going to need the @Developers to look at the code in the FOG configuration page to why that field is hidden in 1.5.5.3 (it works in 1.5.4). Then you can rebuild your custom advanced menu again.

                      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!

                      1 Reply Last reply Reply Quote 1
                      • S
                        Sebastian Roth Moderator
                        last edited by Sebastian Roth

                        @Scott-B @george1421 Ok seems like there is something messed up with the advanced menu.

                        First there seems to be an issue in the code that causes the chainload error. Please edit /var/www/html/fog/service/ipxe/advanced.php, jump to the end of the file and make the last four lines look like this:

                        printf(
                            "%s",
                            FOGCore::getSetting('FOG_PXE_ADVANCED')
                        );
                        

                        So remove the #!ipxe part in the second line. Save the file and see if your advanced login menu is properly working again.

                        @george1421 said:

                        FOG will only display the advanced menu item if that field contains data. With a blank field FOG skips over displaying the iPXE menu.

                        You are perfectly right about this and I am not sure why it is that way. I am looking through the code right now to figure it out. My guess is that that part was moved to the iPXE menu settings but partly some stuff was left behind. While most old installations still had FOG_PXE_ADVANCED set from the old days no one did really notice.

                        @george1421 said:

                        We are going to need the @Developers to look at the code in the FOG configuration page to why that field is hidden in 1.5.5.3 (it works in 1.5.4).

                        What exactly do you mean? I just installed a fresh 1.5.4 test system and it looks exactly the same to me. FOG_PXE_ADVANCED empty and no field to edit it.

                        @Scott-B It’s kind of strange that you seem to be able to use the Advanced (Login) menu at all if that variable is empty in your database. See if you can make it work with the above mentioned code change and we’ll take it from there.

                        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

                        george1421G Scott BS 2 Replies Last reply Reply Quote 0
                        • george1421G
                          george1421 Moderator @Sebastian Roth
                          last edited by

                          @Sebastian-Roth said in chainloading failed advanced menu:

                          What exactly do you mean? I just installed a fresh 1.5.4 test system and it looks exactly the same to me. FOG_PXE_ADVANCED empty and no field to edit it.

                          adv_ipxe.png

                          If I look at my fog server running 1.5.4 I can enter an Advanced menu command, because the field (edit box) is there. If you look at what Scott posted below he doesn’t have the box to enter anything in and he’s using 1.5.5.3 https://forums.fogproject.org/topic/12911/chainloading-failed-advanced-menu/5

                          I don’t know why the menu is being displayed in the iPXE side, but the first is to be able to edit in the webui. The rest is executing “I think” correctly. Its possible that the advanced menu field has a single white space in it causing the menu to be displayed in the ipxe side. I didn’t do a length in my query.

                          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!

                          1 Reply Last reply Reply Quote 0
                          • S
                            Sebastian Roth Moderator
                            last edited by Sebastian Roth

                            @george1421 Can’t stop laughing. We all seem to have stepped into the same puddle of mud here. I figured that the field is not being displayed because AdBlock Plus Firefox Add-in is blocking it!!!

                            The rest is executing “I think” correctly.

                            Sorry, no. There is an issue in the advanced.php as mentioned earlier. As soon as Scott has fixed that in the code (manually for now) and maybe disabled AdBlock for this site to be able to edit that field he should be all up and running.

                            But still I am wondering about the structure of this. When you got to FOG Configuration -> iPXE Menu Item Settings -> fog.advanced. From my understanding this is how the advanced menu was meant to be used at some stage but was never finished. Maybe I am wrong here. @Tom-Elliott is the only one who can tell us I suppose.

                            I’ll push that one fix to github for now and we’ll see about the rest later.

                            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 1
                            • S
                              Sebastian Roth Moderator
                              last edited by Sebastian Roth

                              @Sebastian-Roth said in chainloading failed advanced menu:

                              But still I am wondering about the structure of this. When you got to FOG Configuration -> iPXE Menu Item Settings -> fog.advanced. From my understanding this is how the advanced menu was meant to be used at some stage but was never finished.

                              Yeah, I got that upside down. Has been a long time since I last used it. iPXE Menu Item Settings is just that, the menu definition itself. Those should be fine for Scott as far as I see (only issue which should not cause trouble is the &amp;&amp; you have, make this && in the fog.advancedlogin so you won’t have that isset message on screen). Now after the menu item (login or not) it proceeds to load what is defined in the “Advanced menu command” field (disable AdBlock Firefox Add-in to see that). For that to work you need to fix that code in /var/www/html/service/ipxe/advanced.php as mentioned before.

                              The “Advanced menu command” field needs to begin like this:

                              #!ipxe
                              ...
                              

                              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
                              • Scott BS
                                Scott B @Sebastian Roth
                                last edited by

                                @Sebastian-Roth said in chainloading failed advanced menu:

                                I made the change to /var/www/html/fog/service/ipxe/advanced.php as suggested. The menu still isn’t working but does a few extra errors about Exec format as seen in the image below.

                                chainloaderror2

                                1 Reply Last reply Reply Quote 0
                                • S
                                  Sebastian Roth Moderator
                                  last edited by

                                  @Scott-B What have you set in the “Advanced Menu Command” field?

                                  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

                                  Scott BS 1 Reply Last reply Reply Quote 0
                                  • Scott BS
                                    Scott B @Sebastian Roth
                                    last edited by

                                    @Sebastian-Roth said in chainloading failed advanced menu:

                                    @Scott-B What have you set in the “Advanced Menu Command” field?

                                    It’s blank and uneditable.

                                    AdvancedMenu

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      Sebastian Roth Moderator
                                      last edited by

                                      @Scott-B As mentioned yesterday you need to disable Firefox Add-in AdBlock Plus to see the field. Not sure why that is but I figured that was blocking the field for me. Pretty sure it’s the same for you.

                                      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

                                      Scott BS 1 Reply Last reply Reply Quote 0
                                      • Scott BS
                                        Scott B @Sebastian Roth
                                        last edited by Scott B

                                        @Sebastian-Roth said in chainloading failed advanced menu:

                                        @Scott-B As mentioned yesterday you need to disable Firefox Add-in AdBlock Plus to see the field. Not sure why that is but I figured that

                                        Doh! I must have only allowed it temporarily. The field is there now. It’s blank.

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          Sebastian Roth Moderator
                                          last edited by

                                          @Scott-B Well then start adding your advanced menu code here:

                                          #!ipxe
                                          ...
                                          

                                          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

                                          Scott BS 1 Reply Last reply Reply Quote 0
                                          • Scott BS
                                            Scott B @Sebastian Roth
                                            last edited by

                                            @Sebastian-Roth said in chainloading failed advanced menu:

                                            @Scott-B Well then start adding your advanced menu code here:

                                            #!ipxe
                                            ...
                                            

                                            That get’s me past the chainload error and drops me off at a blinking cursor.

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

                                            158

                                            Online

                                            12.0k

                                            Users

                                            17.3k

                                            Topics

                                            155.2k

                                            Posts
                                            Copyright © 2012-2024 FOG Project