在做pxelinux启动的过程中,不可避免的会用到菜单选项。有两个选择,menu.c32 和 vesamenu.c32。
效果如下: menu.c32
vesamenu.c32
区别就是一个地方,我们看一下配置文件:
1default vesamenu.c32
2PROMPT 0
3NOESCAPE 0
4ALLOWOPTIONS 0
5TIMEOUT 200
6
7
8MENU TITLE Boot Menu
9
10LABEL Ghost_Client_UNDI
11 MENU LABEL ^1. Ghost Client UNDI
12 MENU DEFAULT
13 kernel memdisk
14 append keeppxe initrd=imz/Client_undi.imz
15
16LABEL Ghost_Client_NDIS
17 MENU LABEL ^2. Ghost Client NDIS
18 kernel memdisk
19 APPEND keeppxe initrd=imz/Client_ndis.IMZ
20
21LABEL WinPE
22 MENU LABEL ^3. WinPE 2.0
23 KERNEL boot/pxeboot.0
24
25LABEL PartedMagic
26 MENU LABEL ^4. Parted Magic
27 kernel utils/pmagic/bzImage
28
29LABEL Local_Drive
30 MENU LABEL ^5. Boot Local Drive
31 # localboot 0
32 KERNEL chain.c32
33 APPEND hd0 0
区别就是第一行:
menu.c32 是 UI menu.c32
vesamenu.c32 是 default vesamenu.c32
个人还是觉得menu.c32比较好,习惯了这种蓝色。
那么,我们如果想把pxelinux.0、menu.c32、vesamenu.c32都扔到/ks/pxelinux的子目录下,而不是扔在/ks的根目录下,那么配一下dnsmasq的209和210即可,看一下boot2.php文件:
1 case '\52:54:00:7f:65:bb':
2 echo "set 209:string vesamenu.conf\n";
3 echo "set 210:string http://172.16.8.1/ks/pxelinux/\n";
4 echo "chain http://172.16.8.1/ks/pxelinux/pxelinux.0\n";
5 break;