1 2 Previous Next 29 Replies Latest reply: Feb 7, 2014 1:18 AM by pascal.peters@hmmh.de RSS

    LanDesk PXE syslinux pxelinux interation

    Rookie

      Hello,


      At my company we used Windows Deployment Services (WDS) together with

      pxelinux ( http://syslinux.zytor.com/wiki/index.php/WDSLINUX ).

       

      This made it possible to boot/install window and several linux flavours like this:

      DHCP with PXE, then via tftp pxelinux.0 was loaded with pxelinux.cfg/default containing a menu to select boot/install of windows/linux etc.

       

      Now my company switched to LanDesk and I need to integrate our old pxelinux menu.

      LandDesk brings it's own dhcp/tftp server which serves an "F8 Menu".

       

      I see two options:

       

      1) extend the current LanDesk "F8 Menu" to have an option to load our old pxelinux.0 and pxelinux.cfg/default

          into the  ROM of the network card.

       

          How could I add an extra option to the "F8 Menu" ?

       

      2) or replace the inital boot rom:

          As far as I know the first file that gets loaded via tftp during pxe boot is X86PC\UNDI\BStrap\BStrap.0 so I guess tis is what responsible for the "F8 menu"

       

          Is it possible to tell LanDesk to use e.g. X86PC\UNDI\pxelinux\pxelinux.0 instead of X86PC\UNDI\BStrap\BStrap.0 ?

          How and where could I change this setting ?

       

         I already tried to overwrite X86PC\UNDI\BStrap\BStrap.0 with pxelinux.0 .

         But although I restarted "LanDesk PXE" service nothing happened, I still got the "F8 menu"

       

         In context  to this I am wondering what the function of C:\Program Files (x86)\LANDesk\PXE\System\BStrapOpts.Dll  is about.

       

       

      Any help is much appreciated

        • 1. Re: LanDesk PXE syslinux pxelinux interation
          Jared Barneck SupportEmployee

          Actually have you deployed a Secure PXE Rep?  We already have PXELinux setup for you if you deploy a Secure PXE Rep.


          I am going to move this to the OSD Queue as it doesn't really involve Linux so much as the SYSLINUX pxe tools, which despite the word "linux" in the name, has really nothing to do with linux.

          • 2. Re: LanDesk PXE syslinux pxelinux interation
            Jared Barneck SupportEmployee

            So in the Console, Go to Distribution | OS Deployment

            Click All other scripts (if you don't do this the icon for a Secure PXE Rep is disabled)

            Click the 'Build the secure PXE representative deployment scripts' icon and make a new PXE Rep.

            Deploy that PXE rep.


            Now go to the PXE Rep.  Check out the differences in the installed structure.


            Each item in the F8 menu has its own pxelinux.cfg\default configuration.

             

            Problems are:
            1. All items are password protected, and this breaks the PXE Holding Queue as devices won't auto boot.

            2. We are not setup to reduce down to only one F8 option and have PXELINUX handle the rest.

            • 3. Re: LanDesk PXE syslinux pxelinux interation
              Rookie

              > Actually have you deployed a Secure PXE Rep?

               

              Sorry, I do not even have a clue  what a Secure "PXE Rep" is.

              If i talk about PXELinux I mean the the syslinux pxelinux stuff I used in the past with WDS.

               

              I am the linux/unix guy and the windows guys broke my linux pxe setup by switching

              to LanDesk. Now I have to work around this. I have no clue about LanDesk nor much interest in using it.

              I just have to find a way to make it possible for pxelinux and landesk to live together.

               

              I need to boot things like this :

               

              LABEL   2
                      MENU LABEL RHEL 5.4 i386 Kickstart
                      KERNEL linux/redhat/rhel5.4/i386/vmlinuz
                      APPEND initrd=linux/redhat/rhel5.4/i386/initrd.img console=tty0 console=ttyS1,115200n8r kssendmac ksdevice=bootif ks=http://boot.mycompany.tld/linux/redhat/ks/intern/i386/server.ks

               

              LABEL   2a
                      MENU LABEL Debian lenny amd64 network installation serial
                      kernel linux/debian/lenny/amd64-broadcom/linux
                      append initrd=linux/debian/lenny/amd64-broadcom/initrd.gz debian-installer/country=DE debian-installer/locale=en_US.UTF-8 console-keymaps-at/keymap=de-latin1-nodeadkeys console=ttyS1,115200n8r

               

              I really would prefer to replace the initial LanDesk "F8 menu" which I suspect to be X86PC\UNDI\BStrap\BStrap.0

              (because I see "Boot file name: X86PC\UNDI\BStrap\BStrap.0" ) by pxelinux.0 and then have an menu entry like this:

               

              LABEL   3
                       MENU LABEL LanDesk
                       kernel  X86PC/UNDI/BStrap/BStrap.0

               

              So it should be possible to jump from pxelinux.0 to the landesk stuff, shouldn't it ?

               

              I am a little bit confused because overwriting X86PC/UNDI/BStrap/BStrap.0 with pxelinux.0 seems to have no effect.

              • 4. Re: LanDesk PXE syslinux pxelinux interation
                EMiranda Expert

                muellejo, I do believe i understand what you are talking about.  I use syslinux & landesk pxe menu to launch other things than the default LANDesk provides, like dell diagnostics and Disk WIPE utilities.

                 

                Here is an example of one of my PXE menus:

                 

                asdfsd.png

                 

                syslinux running with my custom vesamenu

                 

                restasdsa.png

                 

                 

                 

                I'll try my best to explain my process:

                 

                The boot folders are stored here ON the PXE server -

                C:\Program Files\LANDesk\PXE\System\images\x86pc\undi

                 

                Now if you want to create a special entry, just create a folder in this directory.   For my example.  I created a folder called dell

                 

                In this folder you put all your syslinux files,pxelinux.cfg folder and .img files.  Here is a screenshot:

                 

                menu.png

                 

                I did not use the LANDesk initrd boot file, i used my own initrd.gz which came with my syslinux/pxelinux version that i download

                 

                Next I configured my default (menu) file:

                 

                Here is mine:

                 

                default vesamenu.c32
                MENU WIDTH 80
                MENU MARGIN 14
                MENU COLOR BORDER 30;44       #00000000 #00000000 none
                MENU COLOR TABMSG 1;36;44     #00000000 #00000000 none
                MENU COLOR TITLE 1;36;44     #00000000 #00000000 none
                MENU COLOR SEL   30;47       #40000000 #20ffffff
                MENU BACKGROUND hdsmenu.jpg
                MENU TABMSG
                MENU TITLE HD Supply Imaging Utility
                prompt 0
                
                
                LABEL Dell Diagnostics - D600, D610, D620, D420, D820
                KERNEL memdisk
                APPEND initrd=latitudes.img
                
                LABEL Dell Diagnostics - D630, D430, Opt745
                KERNEL memdisk
                APPEND initrd=delld630.img
                
                LABEL Dell Diagnostics - GX620
                KERNEL memdisk
                APPEND initrd=dellgx620.img
                
                LABEL Reboot System
                KERNEL reboot.c32
                

                 

                 

                So that should get your syslinux/pxelinux setup, Now we have to add the menu items to the PXE menu

                 

                On the PXE server browse to :

                 

                c:\Program Files\LANDesk\PXE\System

                 

                • open up PxeConfig
                • Highlight Boot Server
                • Right Click on choose Add/Remove Boot Server Type
                • pick a Boot Server Type ( I choose the next availble one which was 32)
                • name it - I named it dell (to match the folder, also don't use spaces)
                • Highlight your boot server (dell in my example)
                • Right Click on choose Add Client Support
                • in Boot File Base Name = pxelinux
                • should look like this:

                menu2.png

                • Click OK
                • Restart the LANDesk PXE MTFTP Service

                 

                 

                Phew almost done...now to add the menu on the F8 menu during PXE

                 

                • Now Click on Client Boot Menu
                • Click on X86PC (UNDI)
                • Right Click and Choose Add boot server to this menu...
                • Boot Server Type - Type in the number that you created the boot server with ( mine was 32 so i put 32, also it may not show up in the list of available boot server types, that is ok)
                • Add your Description ( this is what the user will see when they hit F8 - screenshot of mine:

                menu3.png

                 

                Now one more final step: you need to define the bootserver discovery list

                 

                • Right Click on proxyDHCP Server
                • Choose Configure proxyDHCP Server
                • Go to Client Options tab and click Add to Bootserver Discovery List
                • Now in the Bootserver List, Click on your bootserver that you created
                • add the IP Address - (use the same address as the other bootservers that are listed on the right)
                • Click OK and your done...

                 

                 

                 

                 

                I know that's alot of info to suck in and def not supported by LANDesk but if you are familiar with syslinux/pxelinux this should get you on your way to achieving what you were trying to accomplish.

                • 5. Re: LanDesk PXE syslinux pxelinux interation
                  Rookie

                  EMiranda, thanks a lot!

                  This is very helpfull!

                   

                  I think I did everything as you described, but unfortunately I still do not see any changes on the F8 menu.

                  I attached some screenshot, probably you see an error. I also restarted LanDesk PXE and LanDesk PXE MTFTP services.

                  I don't get why I am not able to change anything in the F8 Menu.

                   

                   

                  > pick a Boot Server Type ( I choose the next availble one which was 32)

                   

                  I took "11"

                   

                  > name it - I named it dell (to match the folder, also don't use spaces)

                   

                  I named it "pxelinux"

                   

                  > in Boot File Base Name = pxelinux

                   

                  Ah, pitfall I thought "pxelinux.0" would be correct

                   

                  > Boot Server Type - Type in the number that you created the boot server with ( mine was 32 so i put 32, also it may not show up in the list of available boot server types, that is ok)

                   

                  Ok, it really did not show up in the list.

                   

                  Hm, complicated stuff and still not working.

                   

                  What I liked about pxelinux.0 as initial boot file is that it's possible to have a

                  dedicated configuration for a server based on it's MAC address, I used this for unattended installs

                  ( first pxelinux.0 tries to load pxelinux.cfg/01-00-1b-24-93-a2-7c                               and if that fails it loads pxelinux.cfg/default )

                   

                  At the moment, I think I'll try to find a way to first load pxelinux.0 and then jump  to the LandDesk stuff.

                  • 6. Re: LanDesk PXE syslinux pxelinux interation
                    EMiranda Expert

                    muellejo,

                    Bootserver type 11 was already reserved for linuxpe.  I'm not sure how that will have a conflict with you choosing the same boot server, i think those numbers are embedded in the registry.

                     

                    try a higher number...

                     

                    on a default LANDesk pxe server installation here the numbers that are available:

                     

                    21-29

                    32-65533

                    • 7. Re: LanDesk PXE syslinux pxelinux interation
                      Rookie

                      Hello EMiranda , you were right, I now took  bootserver type 33 and now it works!!

                       

                      Strange, it seems that some of the configuration of the Intel PXE configuration Utility

                      is invisible and can only be edited in regedit.

                       

                      Another pitfall was that  I can't use any Boot Server Description for

                      "proxyDHCP Server -> Client Boot Menu -> X86PC (UNDI)", only very short descriptions work.

                       

                      Thanks a lot!! You helped me much more as our LANDesk consulting partner did.

                      • 8. Re: LanDesk PXE syslinux pxelinux interation
                        EMiranda Expert

                        muellejo wrote:

                         

                        Another pitfall was that  I can't use any Boot Server Description for

                        "proxyDHCP Server -> Client Boot Menu -> X86PC (UNDI)", only shot descriptions work.

                         

                         

                         

                        Do you mean short decriptions?  I can understand that, I would recommend keeping them short as well..because some hardware ( i know Lenovo's are know for this) actually have a maximum total number of characters allowed in the boot menu.  So keeping it short will prevent pxe errors.

                        • 9. Re: LanDesk PXE syslinux pxelinux interation
                          EMiranda Expert

                          muellejo wrote:

                          Thanks a lot!! You helped me much more as our LANDesk consulting partner did.

                           

                          Glad I could help!  I know one of the many reasons we went to LANDesk over other competing products was that they had a huge community support following.  I'm glad i can now be a part of it.

                          • 10. Re: LanDesk PXE syslinux pxelinux interation
                            Jared Barneck SupportEmployee

                            Great work. I was impressed with they way you helped him reach a solution.  I thought I was the only one willing to help manhandle the PXE Rep. I am glad there are more of us out there.

                             

                            I want to explain the reason you have a short description only.

                             

                            The PXE F8 menu is actually limited in size by the BIOS. Every BIOS has a limited size, though some are bigger than others and recently we think some BIOS (Lenovo) may have just shrunk the size a bit more.

                             

                            When I first started working at LANDesk, we only had two items in the F8 Menu.

                             

                            • LANDesk(R) Menu
                            • LANDesk(R) Manageged Boot

                             

                            If you look at each character as a byte, this is not that big.

                             

                            However, then we added WinPE and Linux PE and have something like this (probably not exact)

                             

                            • WinPE Menu
                            • WinPE Managed
                            • LinuxPE Menu
                            • LinuxPE Managed
                            • DOS PE Menu
                            • DOS PE Managed

                             

                            At one point, whenever I added an item, I only have a about 4 to 7 characters of space.  However I think we shortened a few of the words, so I am not sure exactly how many there are now.  I think a character is a byte so I asume that only a handful of bytes are available.

                             

                            Almost nobody is using DOS PE anymore so if you follow this article to remove them from the list, then you should have more space.

                            How to hide LinuxPE, WinPE, or DOS PE PXE Boot Options from the F8 Menu

                            • 11. Re: LanDesk PXE syslinux pxelinux interation
                              Specialist

                              WOAH!!!  In Forl Later

                               

                               

                              • 12. Re: LanDesk PXE syslinux pxelinux interation
                                WINZ-Backoffice Apprentice

                                EMiranda,

                                 

                                Could you provide more information on which syslinux/pxelinux version that you download?

                                 

                                I want to extend our PXE server to offer the various Dell Diags, and some other useful tools such as the f_secure rescue CD, DBAN etc.

                                 

                                Thanks

                                • 13. Re: LanDesk PXE syslinux pxelinux interation
                                  EMiranda Expert

                                  I can't remember what version I was using. I got my core files from the PING site, which I had used to install a PXE server when i was deploying Linux machines long time ago before we had LANDesk

                                   

                                  They still have the downloads available - here is the link -

                                   

                                  http://ping.windowsdream.com/ping/doc-2.01/pxe.html

                                   

                                  That should give you kernel, initrd.gz and pxelinux.0

                                   

                                  vesamenu.32 i just googled and downloaded and modified...

                                   

                                  reboot.32 i just googled and downloaded

                                   

                                  and i think i just created menu.32 manually.

                                  • 14. Re: LanDesk PXE syslinux pxelinux interation
                                    Rookie

                                    would you mind posting what your default file looks like in your prelinux.cfg directory.

                                     

                                    having some difficulty getting this to work.

                                    1 2 Previous Next