丰富的isolinux 应用
本小节讲述如何完美的应用isolinux进行启动光盘的优化。上节我们已经成功的制作好了一个可启动的光盘,但是那仅是一个功能简单的启动盘,如何制作像系统安装盘一样的,功能丰富,画面优美的linux系统盘就是本节的主要内容。
3.1 添加背景图片
首先来看一下带背景图片的启动菜单示例,如下:
上图是一个简单的示例,如果您有兴趣可以做得更加精致,当然,这不是本节的重点。下面笔者将详细的描述背景图片的添加方式。
要为启动菜单添加背景图片,首先需要准备一张640x480的PNG, JPEG 或 LSS16 格式的图片,笔者尝试过更大的图片,结果是不能将图片正常的加载,所以建议使用640*480的图片。然后照下修改isolinux.cfg文件。
display info.txt PROMPT 0 timeout 200 default vesamenu.c32 MENU BACKGROUND /PIC2.jpg MENU WIDTH 60 MENU MARGIN 0 MENU ROWS 11 MENU HELPMSGROW 15 MENU TIMEOUTROW 22 MENU TABMSGROW 24 MENU CMDLINEROW 24 MENU HSHIFT 10 MENU VSHIFT 2 menu color screen 37;40 #ffffffff #00000000 none menu color border 30;44 #00000000 #00000000 none menu color title 1;36;44 #f01291a9 #00000000 std menu color unsel 37;44 #e01291a9 #00000000 none menu color hotkey 1;37;44 #e060CA00 #00000000 none menu color sel 7;37;40 #e0712704 #20ff8000 all menu color hotsel 1;7;37;40 #e0400000 #20ff8000 all menu color disabled 1;30;44 #60cccccc #00000000 none menu color scrollbar 30;44 #40000000 #00000000 std menu color tabmsg 31;40 #9060CA00 #00000000 none menu color cmdmark 1;36;40 #c000ffff #00000000 std menu color cmdline 37;40 #c0ffffff #00000000 none menu color pwdborder 30;47 #80ffffff #20ffffff std menu color pwdheader 31;47 #80ff8080 #20ffffff std menu color pwdentry 30;47 #c0ffffff #20ffffff std menu color timeout_msg 37;40 #e060CA00 #00000000 none menu color timeout 1;37;40 #f060CA00 #00000000 none menu color help 37;40 #c0ffffff #00000000 none menu color msg07 37;40 #90ffffff #00000000 none MENU AUTOBOOT Automatic boot in # seconds… MENU TABMSG press [TAB] Edit Option MENU TITLE Linux kernel Test LABEL Test Linux MENU LABEL Start My Linux Kernel MENU INDENT 4 KERNEL /bzImage append initrd=/ramdisk.img load_ramdisk=1 prompt_ramdisk=0 ramdisk_size=600000 rw root=/dev/ram |
注意红色标注的部分,PROMPT 0 不会提示用户输入,在制作菜单的过程中,建议将其设为1 ,这样,您可以方便的观察当前配置是否有错误的地方,并且容易查找配置文件中的错误。提示完成后,记得输入回车启动后面的内容。MENU BACKGROUND /PIC2.jpg,这是本节的主要配置选项,PIC2.jpg就是笔者加入的菜单背景。可能您已经注意到上述配置文件中除了对背景的配置外,还有其他的配置信息,如 MENU WIDTH 之类的诸多配置选项,这将在下一小节进行介绍。
要应用isolinux的菜单功能,必须包含vesamenu.c32文件,该文件可以在syslinux-4.04文件中的com32\menu中找到。您可以把该文件复制到要制作的iso镜像文件夹中,笔者将其放在isolinux.cfg的目录下。
3.2 添加各类菜单选项
Isolinux支持丰富的菜单功能,可以参考syslinux-4.04中doc文件夹中的menu.txt文件,该文件作了更为详细的描述,笔者只针对一部分菜单做介绍。
DEFAULT label
设置全局默认,如果“label”指向一个子菜单,那么这个菜单将成为开始菜单;换句话说,这个指令同MENU DEFAULT和MENU START具有相同的作用。
布局选项
上面的选项控制屏幕上菜单的布局。上面的值为默认值。负数值是相对屏幕的计算长度(25用于文本模式,28用于VESA图形模式)。
MENU COLOR element ansi foreground background shadow
设置元素颜色。您可以按如下序列进行设定颜色值:
上图中有英文的简要注释,如screen元素表示重置的屏幕。Title表示标题的工具条,这里的所有元素均有默认值,如下:
您可以根据自己的需求进行修改。这里,讲解一下最后一个元素msgXX,在默认值中,最后一项为msg07,这是什么意思呢?这里XX是两个16进制数,07表示“纯文本”。
整个条目中有一个字段为ansi,从默认值中也可以看出它的取值相当丰富,下面将详细的介绍该字段的含义,取值最小为0, 最大49,各值对应的含义如下:
0 重置所有属性为默认值
1 设置黑体
4 设置下划线 (simulated with color on a color display)
5 set blink
7 set reverse video
22 set normal intensity
24 underline off
25 blink off
27 reverse video off
30 set black foreground
31 set red foreground
32 set green foreground
33 set brown foreground
34 set blue foreground
35 set magenta foreground
36 set cyan foreground
37 set white foreground
38 set underscore on, set default foreground color
39 set underscore off, set default foreground color
40 set black background
41 set red background
42 set green background
43 set brown background
44 set blue background
45 set magenta background
46 set cyan background
47 set white background
49 set default background color
"foreground" 和 "background" 是#AARRGGBB符号的颜色编码,AA RR GG BB 是alpha(不透明度)的十六进制数字,分别为红,绿和蓝。#00000000代表全透明,#ffffffff代表不透明的白色。
"shadow" 控制处理图形化控制台文本阴影,允许值为“none”(无阴影),“std”或”standard”(标准阴影-前景像素凸起), "all" (背景色和前景色都凸起), 和"rev" 或 "reverse" (b背景色凸起)。
F1 textfile [background]
...
F12 textfile [background]
显示全屏帮助(命令行时也有效)。此外,选项的第二个参数允许不同的背景图像(参考MENU BACKGROUND 支持的格式)被显示。注意,textfile文件名。
MENU AUTOBOOT message
替换消息“Automatic boot in # second{,s}...”。#号 替换剩下的秒数,语法"{singular,[dual,]plural}"可以恰当的结合使用。
MENU TABMSG message
替换消息"Press [Tab] to edit options"。
MENU HELP textfile [background]
创建一个菜单条目,其中,被选中时,显示全屏帮助像F-key一样的帮助。