读书人

打造自己的Linux系统与启动光盘(3)

发布时间: 2012-09-02 21:00:34 作者: rapoo

制作自己的Linux系统与启动光盘(3)

丰富的isolinux 应用

本小节讲述如何完美的应用isolinux进行启动光盘的优化。上节我们已经成功的制作好了一个可启动的光盘,但是那仅是一个功能简单的启动盘,如何制作像系统安装盘一样的,功能丰富,画面优美的linux系统盘就是本节的主要内容。

3.1 添加背景图片

首先来看一下带背景图片的启动菜单示例,如下:

打造自己的Linux系统与启动光盘(3)

上图是一个简单的示例,如果您有兴趣可以做得更加精致,当然,这不是本节的重点。下面笔者将详细的描述背景图片的添加方式。

要为启动菜单添加背景图片,首先需要准备一张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具有相同的作用。

布局选项

打造自己的Linux系统与启动光盘(3)

上面的选项控制屏幕上菜单的布局。上面的值为默认值。负数值是相对屏幕的计算长度(25用于文本模式,28用于VESA图形模式)。

MENU COLOR element ansi foreground background shadow

设置元素颜色。您可以按如下序列进行设定颜色值:

打造自己的Linux系统与启动光盘(3)

上图中有英文的简要注释,如screen元素表示重置的屏幕。Title表示标题的工具条,这里的所有元素均有默认值,如下:

打造自己的Linux系统与启动光盘(3)

您可以根据自己的需求进行修改。这里,讲解一下最后一个元素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一样的帮助。

读书人网 >UNIXLINUX

热点推荐