Feb 25, 2010 9:42 AM
LanDesk PXE syslinux pxelinux interation
-
Like (0)
|
|
|
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
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.
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.
> 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.
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:
syslinux running with my custom vesamenu
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:
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
Phew almost done...now to add the menu on the F8 menu during PXE
Now one more final step: you need to define the bootserver discovery list
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.
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.
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
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.
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.
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. ![]()
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.
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)
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.
Not authorized to view the specified document 1434
WOAH!!! In Forl Later
![]()
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
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.
would you mind posting what your default file looks like in your prelinux.cfg directory.
having some difficulty getting this to work.
|
|||||


