安然小屋 安然之家

安然小屋 安然之家

syslinux wds结合 Syslinux+WDS
2017-01-05

http://www.syslinux.org/wiki/index.php?title=WDSLINUX

http://www.it165.net/os/html/201302/4561.html

http://www.linuxidc.com/Linux/2012-04/57996p3.htm


1、提取syslinux中:

core\pxelinux.0   我用的是gpxelinux 

com32\menu\vesamenu.c32

com32\menu\menu.c32

com32\modules\chain.c32

memdisk\memdisk

将以上文件拷贝到 D:\RemoteInstall\Boot\x86文件夹和D:\RemoteInstall\Boot\x64文件夹下

更改

x86

和

x64

中的

pxelinux.0

的文件名为

pxelinux.com 

更改

x86

和

x64

中的

pxeboot.n12

的名称为

pxeboot.0 

更改

x86

和

x64

中的

abortpxe.com

的名称为

abortpxe.0

2、

更改x86和x64中的pxelinux.0的文件名为pxelinux.com

更改x86和x64中的pxeboot.n12的名称为pxeboot.0

更改x86和x64中的abortpxe.com的名称为abortpxe.0


3、

x86和x64中 创建名为pxelinux.cfg的文件夹,并在此文件夹下创建名为default的配置文件



wds.jpg

是背景图,

大小为

 640*480




  • Extract core\pxelinux.0 com32\menu\vesamenu.c32 and com32\modules\chain.c32 from the syslinux download and put it on your WDS server in $WDS-ROOT\Boot\x86\ and $WDS-ROOT\Boot\x64\(substitute WDS-ROOT for where your WDS root folder is)

    • Depending on the version, you may also need additional modules such as ldlinux.c32, libcom32.c32 and libmenu.c32. See also ELF missing dependencies

  • In the $WDS-ROOT\Boot\$ARCH folders Rename pxelinux.0 to pxelinux.com

  • Create a folder named pxelinux.cfg (in the $WDS-ROOT\Boot\x86\ and $WDS-ROOT\Boot\x64\ folder)

  • In the pxelinux.cfg folder create a text file named default and add the following to it (you can substitute MyMenuBackgroundPicture640x480.jpg for any image you want as your menu background)


4、

WDS机器上 以管理员的身份运行: 告诉wds用什么启动文件启动

wdsutil /set-server /bootprogram:boot\x86\pxelinux.0 /architecture:x86
wdsutil /set-server /n12bootprogram:boot\x86\pxelinux.com /architecture:x86
wdsutil /set-server /bootprogram:boot\x64\pxelinux.0 /architecture:x64
wdsutil /set-server /n12bootprogram:boot\x64\pxelinux.com /architecture:x64 


===================================


wdsutil /set-server /bootprogram:boot\x86\pxelinux.com /architecture:x86

wdsutil /set-server /N12bootprogram:boot\x86\pxelinux.com /architecture:x86

========================================

5、创建启动菜单:

DEFAULT      vesamenu.c32

 PROMPT       0

 NOESCAPE     0

 ALLOWOPTIONS 0

 # Timeout in units of 1/10 s

 TIMEOUT 300

 MENU MARGIN 10

 MENU ROWS 16

 MENU TABMSGROW 21

 MENU TIMEOUTROW 26

 MENU COLOR BORDER 30;44 #20ffffff #00000000 none

 MENU COLOR SCROLLBAR 30;44 #20ffffff #00000000 none

 MENU COLOR TITLE 0  #ffffffff #00000000 none

 MENU COLOR SEL   30;47 #40000000 #20ffffff

 MENU BACKGROUND MyMenuBackgroundPicture640x480.jpg

 MENU TITLE PXE Boot Menu

 #---

 LABEL wds

 MENU LABEL Windows Deployment Services

 KERNEL pxeboot.0

 #---

 LABEL Abort

 MENU LABEL AbortPXE

 Kernel abortpxe.0

 #---

 LABEL local 

 MENU DEFAULT

 MENU LABEL Boot from Harddisk

 LOCALBOOT 0

 Type 0x80

DEFAULT      vesamenu.c32
 PROMPT       0
 NOESCAPE     0
 ALLOWOPTIONS 0
 # Timeout in units of 1/10 s
 TIMEOUT 300
 MENU MARGIN 10
 MENU ROWS 16
 MENU TABMSGROW 21
 MENU TIMEOUTROW 26
 MENU COLOR BORDER 30;44		#20ffffff #00000000 none
 MENU COLOR SCROLLBAR 30;44		#20ffffff #00000000 none
 MENU COLOR TITLE 0 		#ffffffff #00000000 none
 MENU COLOR SEL   30;47		#40000000 #20ffffff
 MENU BACKGROUND MyMenuBackgroundPicture640x480.jpg
 MENU TITLE PXE Boot Menu
 #---
 LABEL wds
 MENU LABEL Windows Deployment Services
 KERNEL pxeboot.0
 #---
 LABEL Abort
 MENU LABEL AbortPXE
 Kernel	abortpxe.0
 #---
 LABEL local 
 MENU DEFAULT
 MENU LABEL Boot from Harddisk
 LOCALBOOT 0
 Type 0x80
linux.menu配置文件如下:
MENU MARGIN 10
MENU ROWS 16
MENU TABMSGROW 21
MENU TIMEOUTROW 26
MENU COLOR BORDER 30;44 #20ffffff #00000000 none
MENU COLOR SCROLLBAR 30;44 #20ffffff #00000000 none
MENU COLOR TITLE 0 #ffffffff #00000000 none
MENU COLOR SEL 30;47 #40000000 #20ffffff
MENU TITLE PXE Boot Menu
LABEL Main Menu
MENU LABEL ^0----Return to Main Menu
KERNEL vesamenu.c32
LABEL CentOS-6.3
MENU LABEL ^1----CentOS-6.3
APPEND pxelinux.cfg pxelinux.cfg/linux.menu
kernel linux/CentOS-6.3/pxeboot/vmlinuz
append ks=ftp://192.168.8.1/CentOS-6.3/ks.cfg initrd=linux/CentOS-6.3/pxeboot/initrd.img ramdisk_size=80

 

如果用pxe 不是用gpxe 就要 最后

1. 在D:\RemoteInstall\Boot\x86文件夹和D:\RemoteInstall\Boot\x64文件夹下分别创建Linux文件夹
2.在D:\RemoteInstall\Boot\x86\linux和D:\RemoteInstall\Boot\x64\linux目录下创建CentOS-6.3目录,并将ftp根目录下CentOS-6.3中image目录下的内容全部拷贝到该目录下。
  • Make a copy of pxeboot.n12 and name it pxeboot.0

  • make a copy from abortpxe.com and rename it to abortpxe.0

  • Create a folder named Linux (in the $WDS-ROOT\Boot\x86\ and $WDS-ROOT\Boot\x64\ folder)

    • wdsutil /set-server /bootprogram:boot\x86\pxelinux.com /architecture:x86

    • wdsutil /set-server /N12bootprogram:boot\x86\pxelinux.com /architecture:x86

    • Open the Windows Deployment Services Console,

    • Right Click on your Server and Select Properties,

    • From the Boot Tab change the default boot program for your architecute (x86 and x64 as well) to Boot\x86\pxelinux.com and Boot\x64\pxelinux.com respectively

    • NOTE: In the WDS included in Windows Server 2008 R2 the UI has changed and you have to use the command line to set the the default boot program.

    • Thus to change the boot program to pxelinux.com, the wdsutil command line tool has to be used: (do this also for x64 if you have x64 clients also)

  • Now when you pxe boot a machine you will get your custom boot menu