无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 51368|回复: 55
打印 上一主题 下一主题

[分享] SYSLINUX 中文简介

    [复制链接]
跳转到指定楼层
1#
发表于 2015-12-8 15:45:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 有阴也有阳 于 2015-12-8 20:13 编辑

         简单一点来说,SYSLINUX是一个功能强大的引导加载程序,而且兼容各种介质。更加确切地说:SYSLINUX

是一个小型的Linux操作系统,它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘。  

        它的安装很简单,一旦安装syslinux好之后,sysLinux启动盘就可以引导各种基于DOS的工具,以及MS-DOS/

Windows或者任何其它操作系统。  

        syslinux的相关选项(Options)

        以下常用的选项(参数),适用于syslinux的所有版本:

        -s  

        Safe, solw, stupid:这个参数可以提高syslinux的引导兼容性。此参数可以让syslinux工作在一些非常规的BOIS上,有些机器上-s的

选项(参数)是必需的,也就是说这是一个安全的选项(参数),建议一般要用上这个选项(参数)。

        -f  

        Force installing:强制写入syslinux的引导代码,这是一个可选的选项(参数),如果你发现不能写入syslinux时,就可以使用这个选项

(参数),但一般建议:写入本地磁盘时加上这个选项(参数)。

        -r  

        Raid mode:RAID 模式。这是一个可选的选项(参数),如果启动失败,告诉BIOS启动顺序(通常是下一个硬盘),而不是给出错误信

息后停止,这个一个RAID模式的选项(参数),一般来说可以不使用。


        以下常用的选项(参数),只适用于Windows的版本:

        -m

        MBR:将syslinux引导代码写入到驱动器的MBR启动扇区。这是一个可选的选项(参数),建议使用此选项(参数),如果之前有将GURB4DOS

写入磁盘的MBR中,那么你必须使用-m选项(参数),否则将写入失败。

        之前笔者就是因为有将“grub for dos”写入过MBR,而之后将syslinux引导代码写入MBR时,又没有使用-m选项(参数),所以一直不能将

syslinux引导代码写入MBR。

        示例:syslinux.exe -s -f -m -a -d /boot/syslinux x:

        (x: 为盘符)

        -a  

        Active:激活指定分区为活动分区,这是一个可选的选项(参数),当你不确定你所指定的分区是否是活动分区时可以加上这个选项(参数),

实际上,就算你所指定的分区已经是活动的主分区了,也可以加上这个选项(参数)。(=bootable)

        以下常用的选项(参数),只适用于Linux的版本

        -o  

        指定文件系统映像文件中的字节偏移量,它必须是一个可使用的磁盘映像文件。

        创建启动磁盘

        安装syslinux的磁盘将改变磁盘上的引导扇区,并复制ldlinux.sys文件到其根目录(或者复制到指定的目录)下。

        注意:SYSLINUX不支持NTFS文件系统,所以磁盘必须是FAT(FAT16/FAT32)文件系统。

        NT/2K/XP

        语法:  

        syslinux.exe [-sfmar][-d directory] <drive>: [bootsecfile]

        例如:

        Floppy:(a:为软驱)

        syslinux.exe a:  

        硬盘/可移动磁盘等:(z:为盘符)  

        syslinux.exe -m -a -d /boot/syslinux z:  

      【将引导文件复制到其分区的/boot/syslinux目录下,注意:/boot/syslinux目录必须事先建好。】
  
       *上例中的启动菜单配置文件(syslinux.cfg)要在/boot/syslinux目录下。

        *注意:在NT/2K中你可能会收到错误的信息,你只要选择"Ignore"(忽略)就可以正确完成命令了。
  
        DOS

        语法:  

        syslinux.exe [-sfmar][-d directory] <drive>: [bootsecfile]

        Linux

        语法:  

        syslinux [-sfr][-d directory][-o offset] <DeviceOrImage>

        例如:  

        syslinux /dev/fd0
  
        syslinux /设备/第一个软驱

        【将syslinux的引导代码写入第一个软驱】  


        怎么配置我的syslinux?

        所有的syslinux默认配置都可以在一个名为syslinux.cfg的文件里面更改。

        syslinux会在下列位置搜索syslinux.cfg配置文件:

/boot/syslinux/syslinux.cfg
/syslinux/syslinux.cfg
/syslinux.cfg  

        syslinux.cfg文件必须是UNIX或DOS格式的文本文件。

        下面是一个简单的例子,我们来看一下syslinux.cfg文件怎样引导一个linux内核:

DEFAULT linux
LABEL linux
SAY Now booting the kernel from SYSLINUX...
KERNEL vmlinuz.img
APPEND ro root=/dev/sda1 initrd=initrd.img  

        SYSLINUX与LILO是不同的,下面是一个LILO的例子:

image = mykernel
label = mylabel
append = "myoptions"  

        而SYSLINUX是这样写的:  

labelmylabel
kernel mykernel
append myoptions  


        下面我们一起看一下SYSLINUX中的选项:

        注:以下所有选项适用于PXELINUX,ISOLINUX和EXTLINUX以及SYSLINUX,除非另有说明。

        # comment

        注释行,#后面的空格是必须的。

        INCLUDE filename

       在此处插入其他文件的内容。

        LABEL command【标签命令】

        标签命令,主要是用于描述syslinu.cfg文件中的命令的,自己看得懂就可以了,因为这个标签是不会在启动菜单中看到的。

        MENU LABEL【菜单标签】

        这个是在启动菜单中看到的标题项,所这个一定要写个有意义的描述 ,

        例如:

LABEL maxdos
MENU LABEL [01] -- Run MaxDos
kernel /boot/syslinux/memdisk
append initrd=/boot/imgs/maxdos.img  

        KERNEL file【内核文件】

       这个就是SYSLINUX指向的启动文件,这个“kernel”不一定是Linux kernel【Linux内核】,它可以是启动扇区,或者COMBOOT文件。


        以下所列出的为公认的文件扩展名(不区分大小写):

extensions                                                     explain

none or
other                                                 Linux kernel image

.0                                                      PXE bootstrap program (NBP) [PXELINUX only]

.bin                                                   "CD boot sector" [ISOLINUX only]

.bs                                                     Boot sector [SYSLINUX only]

.bss                                                   Boot sector, DOS superblock will be patched in [SYSLINUX only]

.c32                                                  COM32 image (32-bit COMBOOT)

.cbt                                                   COMBOOT image (not runnable from DOS)

.com                                                 COMBOOT image (runnable from DOS)

.img                                                   Disk image [ISOLINUX only]

.ima                                                   Floppy image [ISOLINUX only]


扩展名                                                              说明

没有或其它                                        Linux内核映像

.0                                                      PXE 启动引导程序(NBP)【只用于PXELINUX】

.bin                                                   “光盘引导扇区”【只用于ISOLINUX】

.bs                                                    “磁盘引导扇区”【只用于SYSLINUX】,例如:bsf,

.bss                                                  “磁盘引导扇区”, 用在DOS superblock上,【只用于SYSLINUX】

.c32                                                  COM32映像文件【32-bit COMBOOT】

.cbt                                                   COMBOOT映像文件【不能运行于DOS】

.com                                                 COMBOOT映像文件【可运行于DOS】

.img                                                   磁盘映像文件【实际上可用于ISOLINUX、SYSLINUX、PXELINUX】

.ima                                                   软盘映像文件【实际上可用于ISOLINUX、SYSLINUX、PXELINUX】


        使用这些关键字之一而不KERNEL强制文件类型,与文件名无关。  

        LINUX image  

        你可以直接使用这个,而不是使用KERNEL file来启动一个Linux kernel image【Linux内核映像】。  

        BOOT image  

        启动引导程序(.bs,.bsf,.bin)

        BSS image

        BSS映像启动引导程序(.bss)

        PXE image  

        PXE网络启动引导程序(.0)

        FDIMAGE image  

        软盘映像(.img,.ima)  

        COMBOOT image  

        COMBOOT程序(.com,.cbt)

        COM32 image
  
        COM32程序(.c32)

        CONFIG image

        CONFIG将重新启动引导程序而使用不同的配置文件

        APPEND options...【附加选项】

        添加一个或多个选项(参数)到 kernel 命令行中,这些选项(参数)可以是手动或者是自动的。该选项(参数)是添加在 kernel 命令行的开始处,

通常允许输入的选项覆盖。

        这点与LILO的“append”选项(参数)是相同的。  

        APPEND-

        简单点说,不附加任何命令,可用于覆盖全局的APPEND。

         IPAPPEND flag_val 【只适用于PXELINUX】

        这个IPAPPEND选项(参数)只适用于PXELINUX,这个“flag_val”为下列选项(参数):

        1、下列的选项(参数)将以如下格式添加到内核命令行:

        ip=<client-ip>:<boot-server-ip>:<gw-ip>:<netmask>  

        ……以上基于DHCP/BOOTP或者PXE的启动服务器。
  
        但不推荐使用此选项(参数),使用IP=DHCP的内核命令行更为合适。

        2、下列的选项(参数)将以如下格式添加到内核命令行:

        BOOTIF=<hardware-address-of-boot-interface>  

        这在PXELINUX的文档中有相关的介绍,这将决定临时文件系统程序将从哪一个Interface【端口】启动系统。
  
        LABEL label KERNEL image APPEND options... IPAPPEND flag_val

        【只适用于PXELINUX】

        ……以上表明,如果“LABEL”作为内核启动,其引导的“image”和指定的

        APPEND 和 IPAPPEND 选项将取代配置文件中的全局(在第一个LABEL命令之前)命令。“image”默认值与“label”相同,而且如果没有定义

APPEND,则使用全局命令(如果存在)。


        LOCALBOOT type【ISOLINUX,PXELINUX】

        在PXELINUX,指定“LOCALBOOT 0”代替一个“KERNEL”选项(参数),这个意味着调用此特定LABEL将会引导本地磁盘,而不是一个“KERNEL”。

        参数0表示执行正常启动,参数4将执行一个本地启动和通用网络驱动器接口(UNDI)——常驻内存。  

        最后,参数5将执行一个本地启动与整个PXE的堆栈,包括UNDI驱动器,也是常驻内存。

        所有其它的值都是未定义的。  

        如果你不知道什么是UNDI和PXE堆栈,不要紧——你只要指定参数0就可以了。


        INITRD initrd_file

        从3.71版本开始,一个initrd可以指定一个单独的语句,(INITRD)而不是作为APPEND语句的一部分;这个功能添加“initrd=initrd_file”

到内核命令行中。

        它支持以逗号分隔的多个文件名,这主要是有益于initramfs【一个新的initial RAM disks模型】,它可以支持多个单独的cpio或cpio.gz

压缩文件。  

        cpio简介【摘自:维基百科】

        CPIO是Linux下的一种新的内核启动镜像所附带的虚拟磁盘格式。他与传统的Image格式比较而言有一些改进,主要体现在打包速度和

启动引导方式上。

        cpio 可以从 cpio 或 tar 格式的归档包中存入和读取文件, 归档包是一种包含其他文件和有关信息的文件。有关信息包括:文件名, 属主,

时标(timestamp), 和访问权限。归档包可以是磁盘上的 其他文件, 也可以是磁带或管道。


        Note: all files except the last one are zero-padded to a 4K page boundary.

        This should not affect initramfs.  


        DEFAULT command【默认命令】

        SYSLINUX启动时默认执行的命令项——当用户没有进行选择时。

        如果没有配置文件存在,或在配置文件没有设置默认项时,默认是启动名为“linux”的内核,不会添加其它的选项(参数)。

        例如:可以用于设置所要加载的菜单模块

        default vesamenu.c32  

        UI module options【用户界面模块选项(参数)】

        用于设置菜单模块(通常是“menu.c32”或“vesamenu.c32”),也就是说这是一个命令行界面(菜单指令),它可以覆盖DEFAULT和PROMPT指令。  

        PROMPT flag_val

        如果flag_val为0,启动将显示:“提示符”只有在Shift或Alt键被按下,或Caps Lock键或Scroll lock键设置(这是默认值)。如果flag_val是1,

启动时将始终:“提示符”。

  
        NOESCAPE flag_val

        如果flag_val设置为1,那么将忽略Shift/Alt/Caps Lock/Scroll Lock退出,将强制使用此默认选择项目启动(也同时忽略PROMPT 0)。

        NOCOMPLETE flag_val

        如果flag_val设置为1,那么启动时将不会在显示标签中提示Tab键。  

        IMPLICIT flag_val

        如果flag_val为设置为0,将不会加载的kernel image【内核映像】,除非它已在LABEL声明中明确指定。The default is 1【默认值为1】。

        ALLOWOPTIONS flag_val

        如果flag_val为0,用户将不能指定内核命令行的任何选项(参数)。唯一可用是在APPEND声明中所指定的选项。The default is 1。


        TIMEOUT timeout【超时】

        在执行默认启动菜单项前的等待时间。  

        如果设置为0,那么将将完全禁用timeout(始终等待用户选择),这也是默认的设置。  

        其单位为:1/10秒。  

        以下timeout为30秒:  

        timeout 300  

        注:最大的值为35996,建议设置为小于一小时。
  
        TOTALTIMEOUT timeout

        不会被用户的输入取消,用于处理串口故障或类似 "用户离开" 的状况。  

        默认值是 0。

        # 等待5s除非用户输入,但15m后一定启动

TIMEOUT 50
TOTALTIMEOUT 9000  
ONTIMEOUT kernel options...

        timeout 后调用的命令。一般与 DEFAULT 调用相同。如果指定,DEFAULT只适用于用户按<Enter>启动时。

        ONERROR kernel options...

        如果一个内核映像没有找到(不存在或设置了IMPLICIT),运行指定的命令。  

        如果ONERROR指令为:  

        ONERROR xyzzyplugh  

        并且用户输入的命令行是:

        foo bar baz  

        那么SYSLINUX将执行:  

        xyzzyplugh foo bar baz  

        SERIAL port 【[baudrate] flowcontrol】

        开启一个串口作为控制台,“port【端口】”是一个数字(0 = /dev/ttyS0 =

        COM1,etc。)或者I/O端口地址(例如:0x3F8);如果省略“baudrate【波特率】”,波特率默认为9600 bps。串行的硬编码是 8 bits,

无奇偶校验,1个停止位。  

        下列为“flowcontrol【流控制】”的 bits 组合:

0x001 - Assert DTR
0x002 - Assert RTS
0x010 - Wait for CTS assertion
0x020 - Wait for DSR assertion
0x040 - Wait for RI assertion
0x080 - Wait for DCD assertion
0x100 - Ignore input unless CTS asserted
0x200 - Ignore input unless DSR asserted
0x400 - Ignore input unless RI asserted
0x800 - Ignore input unless DCD asserted  

        所有其它的 bits 给予保留。  

        典型值为:  

0 - No flow control (default)
0x303 - Null modem cable detect
0x013 - RTS/CTS flow control
0x813 - RTS/CTS flow control,modem input
0x023 - DTR/DSR flow control
0x083 - DTR/DCD flow control  

        作为SERIA【串口】指令,它必须保证工作正常,它在配置文件中应该是“First”指令。  

  
        CONSOLE flag_val

        如果flag_val为0,禁止输出到普通视频终端。  

        如果flag_val为1,允许输出到视频终端(默认值)。
  
        有些BIOS因为这个选项(参数)会令视频终端出现异常。
  
        所以该选项(参数)允许你在这些系统上禁用视频控制台。  


        FONT filename

        在显示任何输出之前,装载.psf格式的字体(除了版权行,ldlinux.sys本身被加载里就输出这些)。SYSLINUX只装载字体到显卡。

忽略.psf文件包含的Unicode表。并且只工作于EGA和VGA显示卡。

        注:.psf格式的字体不支持中文。


        KBDMAP keymap

        装载一个简单的键盘映射。该重映射使用很简单(由于这个重映射是基于BIOS的,所以只有标准的美式键盘布局才能被映射),不过

这至少可以帮助使用QWERTZ和AZERTY键盘布局的人(这两个特殊字符大量用于Linux内核命令行)。  

        syslinux的还附带一个名为“kbdmap.c32”的comboot模块文件,它允许动态地改变键盘映射,这样就可以在syslinux的配置文件

中增加一个键盘选择菜单或键盘选择标签

        【keyboard-selection menu and/or keyboard-selection labels】。


        SAY message

        在屏幕上打印Message【信息】。  


        DISPLAY filename

        启动时在屏幕上显示指定文件(如果显示:则在启动前:“提示符”显示内容)。  

        请参阅下面一节的“DISPLAY file”。  

        注:如果指定的文件未找到,那么此选项(参数)将被完全忽略。

        F[1-12] filename【F1功能键到F12功能键】

        基本书写格式:  

F1 filename
F2 filename
...etc【等等】...
F9 filename
F10 filename
F11 filename F12 filename

         在启动时按下相应的【F1-F12】功能键,将在屏幕上显示指定的文件。这个可用于实现开机前在线帮助。

         请参阅下面一节的“DISPLAY file”。


        在使用serial console【串行控制台】时,可以按<Ctrl+F1-F12>转到帮助屏幕:  
________________________________________
<Ctrl-F><1>        to get the F1 screen【转到“F1”屏幕/以下类似】
<Ctrl-F><2>        to get the F2 screen
...etc【等等】...
<Ctrl-F><9>        to get the F9 screen
<Ctrl-F><A>【or <Ctrl-F><0>】        to get the F10 screen
<Ctrl-F><B>        to get the F11 screen
<Ctrl-F><B>        to get the F11 screen
<Ctrl-F><C>        to get the F12 screen ________________________________________

        在配置文件中空行和注释行【#号空格后的内容】将被忽略。

Can SYSLINUX Handle Large Kernels?【SYSLINUX能处理大内核吗?】

        这个版本的SYSLINUX(syslinux 3.83)已经支持大内核了(bzimage 格式),取消了对bzimage格式内核的500K大小限制。能自动检测和

透明处理用户的bzimage格式内核。
  
        这个版本的SYSLINUX还支持启动时加载RAMDISK(initrd),initrd是从DOS文件加载的,其选项(参数)这:“initrd=filename”(这里的

filename为initrd的映像文件名,并且这个文件必须在启动磁盘的根目录下。)

        例如(EXTLINUX):

append ro root=/dev/hda1 initrd=/boot/initrd.img

        为了兼容bzimage和最近的zimage内核,SYSLINUX 1.30和更高的的版本确定使用ID byte 0x31,PXELINUX识别使用ID byte 0x32,

ISOLINUX using ID byte 0x33,and EXTLINUX using ID byte 0x34,ID byte 0x35-0x3f是预留给SYSLINUX之后版本的衍生工具使用。

What is the DISPLAY File Format?【什么是DISPLAY文件格式?】

        DISPLAY 和功能键帮助文件是DOS或者UNIX格式的文本文件。

        此处,以下特殊代码将会被解释:  
  
Clear the screen, home the cursor【清屏,重置光标】: <FF>
<FF> = <Ctrl-L> = ASCII 12  

        注意:屏幕将被当前显示色所填充。

Set the display colors to the specified background and foreground colors【设置显示颜色为指定的背景色和前景色】: <SI><bg><fg>
<SI> = <Ctrl-0> = ASCII 15

        这里的<bg>和<fg>为十六进制数,对于标准的PC显示属性为:  
________________________________________
0 = black【黑色】                    8 = dark grey【深灰色】
1 = dark blue【深蓝色】          9 = bright blue【亮蓝色】
2 = dark green【深绿色】        a = bright green【亮绿色】
3 = dark cyan【暗青色】         b = bright cyan【亮青色】
4 = dark red【暗红色】           c = bright red【鲜红色】
5 = dark purple【暗紫色】       d = bright purple【亮紫色】
6 = brown【褐色】                  e = yellow【**】
7 = light grey【浅灰色】          f = white【白色】 ________________________________________

        选择亮色(8-f)为背景色,将导致前景中相应的暗色(0-7)闪烁。

        在串行控制台中颜色不可见。

        例如:color.txt 文件:

        在蓝色背景上闪烁**

^O9eBlinking Yellow on Blue Background  
________________________________________ # xxd color.txt
0000000: 0f39 6542 6c69 6e6b 696e 6720 5965 6c6c        .9eBlinking Yell
0000010: 6f77 206f 6e20 426c 7565 2042 6163 6b67        ow on Blue Backg
0000020: 726f 756e 640a        round.
________________________________________

Display graphic form filename【显示图像文件名】:

<CAN>filename<newline>  <CAN> = <Ctrl-X> = ASCII 24

        如果当前是VGA显示,进入图形模式并显示指定的图形文件。该文件格式为ad hoc格式,称为LSS16;所包含的Perl程序“ppmtolss16”可

用于生成这样的图片。

        该图像文件将被显示为640x480 16色模式,一旦进入图形模式,显示属性(由<SI>代码序列设置)稍有不同,背景色会被忽略,前景色是图

像文件中指定的16种颜色。因此,ppmtolss16允许你指定颜色索引。注意:颜色索引0和7应该注意选择:0是背景色,7是SYSLINUX自身打印

文字的颜色。

  
Return to text mode【返回到文本模式】: <EM>  

<EM><Ctrl-Y> = ASCII 25

        如果当前是图形模式,则返回到文本模式。

        选择哪一种模式打印消息的一部分: <DLE>..<ETB>

<Ctrl-P>..<Ctrl-W> = ASCII 16-23

         这些代码可用于选择那种模式会打印到消息文件的某个部分。任一控制字符选择特定的实际输出模式 (文本屏幕、图形屏幕、串口)。  

________________________________________
Character【字符】                             Text【文本】        Graph【图像】        Serial【串口】
---------------------------------------------------------------------------------------------------
<DLE> = <Ctrl-P> = ASCII 16             No                          No                          No
<DC1> = <Ctrl-Q> = ASCII 17            Yes                         No                          No
<DC2> = <Ctrl-R> = ASCII 18            No                          Yes                         No
<DC3> = <Ctrl-S> = ASCII 19            Yes                         Yes                         No
<DC4> = <Ctrl-T> = ASCII 20            No                           No                         Yes
<NAK> = <Ctrl-U> = ASCII 21            Yes                          No                         Yes
<SYN> = <Ctrl-V> = ASCII 22             No                          Yes                        Yes
<ETB> = <Ctrl-W> = ASCII 23           Yes                          Yes                        Yes
________________________________________

        示例:

<DC1>Text mode<DC2>Graphics mode<DC4>Serial port<ETB>

        将以控制台输入模式输出。

End of file文件终止: <SUB>
<SUB> = <Ctrl-Z> = ASCII 26

        文件终止(DOS 惯例)

Beep提示音: <BEL>
<BEL> = <Ctrl-G> = ASCII 7

        扬声器提示音。

        引导文件(命令)解释

        以下为SYSLINUX【ISOLINUX、PXELINUX、EXTLINUX也类似】主要文件的作用及说明:
  
isolinux.bin              光盘映像引导文件  
isolinux.cfg              光盘映像启动菜单配置文件  
syslinux.bin             磁盘(U盘/移动硬盘/本地磁盘)映像引导文件  
syslinux.cfg             磁盘(U盘/移动硬盘/本地磁盘)映像启动菜单配置文件  
memdisk                 引导IMG映像的文件,如果你要引导IMG/IMA的映像文件,必须先加载memdisk  
vesamenu.c32        二种窗口模块之一  
menu.c32               二种窗口模块之一
chain.c32                指定分区启动【如:chain.c32 hd0,1 (或chain.c32 hd1,1)】  
reboot.c32              重新启动计算机  
back.png                 窗口背景图片
SYSLINUX.CFG/ISOLINUX.CFG                  菜单解释  
引导文件(命令)                                        说明  
default vesamenu.c32                              默认使用vesamenu.c32窗口模块(必填项)  
timeout 60                                               菜单停留时间,计时单位1/10秒(必填项)  
F1 readme.txt                                          按F1阅读自述文件  
F2 syslinux.cfg                                         按F2显示启动菜单配置文件  
MENU BACKGROUND back.png                运行窗口背景图片(必填项)  
MENU TITLE                                             菜单标题  
MENU WIDTH 40               菜单选择条长度(必填项)  
MENU MARGIN 0                菜单选择条缩进,0不缩进 (若删除则自动使用默认值)  
MENU ROWS 30                菜单选择条却换,0不能却换(若删除则自动使用默认值)

MENU HELPMSGROW 26                          帮助信息位置(若删除则自动使用默认值)  
MENU TIMEOUTROW 27                           倒计时条下移,0不下移(若删除则自动使用默认值)  
MENU TABMSGROW 28                            TAB显示条下移,0不下移 (若删除则自动使用默认值)  
MENU CMDLINEROW 28                           TAB信息条下移,0不下移 (若删除则自动使用默认值)  
        上面这2项的参数必须一致,以免按TAB键后弹出的信息条易位
MENU HSHIFT 0                                        菜单选择条右移,0不右移 (若删除则自动使用默认值)  
MENU VSHIFT 0                                        菜单选择条顶端,0不下移 (若删除则自动使用默认值)  
         以上两项,默认值不一定是0。
menu color screen 37;40
#00000000 #00000000 none  
menu color border 30;44
#00000000 #00000000 none(必填项)
menu color title 1;36;44
#00000000 #00000000 none

        上面这三条有关整个菜单外框,如第二条menu color border可设置背景图片上的整个菜单外框的线条颜色,线条粗细,单线条或双线条等,

还可设置为不显示菜单外框。如果都用默认,对应的条文均可删除,MENU TITLE后只剩下下面2条:

MENU WIDTH 58
MENU color border 0 #0000 #0000 none
LABEL DOS Tools                   设置标签为“DOS Tools”,LABEL后面有一个空格,这个空格是必须的。(看得懂就可以了)  
MENU LABEL DOS Tools        这个就大家在启动菜单上看到的启动项目,MENU和LABEL后面都有一个空格,这个空格是必须的。(看得懂就可以了)  
kernel /memdisk                   指定要启动的内核,启动根目录的memdisk内核,默认是启动磁盘(hd0,0)的根目录(如果启动的内核在其它目录,

在这里必须指明),如果启动的是linux内核,那么不可以指定一些那个linux内核允许的Option。kernel后面有一个空格,这个空格是必须的。

append initrd=/dostools.img           指定要启动的映像文件。这个文件可以是,.img .ima .gz(gz的压缩格式的可以引导文件),.bin(如果是.bin

的格式,就可以不用kernel去启动memdisk了,例如:kernel /pe.bin) ,等等。  

________________________________________

        使用心得

        以下说说笔者的使用心得 :

        一、再一次强调:SYSLINUX目前还不支持NTFS文件系统,所以你的磁盘(U盘/移动硬盘/本地磁盘)必须是FAT(FAT16/FAT32)文件系统。

        二、如果你使用的是PATA(IDE)接口的磁盘,那么使用SYSLINUX都没有什么问题的,如果你使用的是SATA(串口)接口的磁盘,那么有可

能的情况是:

        你已经正常将SYSLINUX的引导代码写入磁盘的MBR了,可是在引导菜单部分会出现一问题(例如:不能显示背景图片,菜单不能正常显示),

有时候U盘也可能会出现这种情况。那么这时候你就要用BOOTICE(引导扇区制作工具——最好下载比较新的版本)将SYSLINUX引导代码写入磁盘

(U盘/移动硬盘/本地磁盘)的PBR(分区引导记录)。

        三、如果你要使用SYSLINUX+GRUB4DOS双引导,那么,在写入SYSLINUX的PBR(分区引导记录)的引导代码后,可以用“grubinstgui”

来将GRUB4DOS的引导代码写入MBR(主引导记录)。

         注意要选择好其中的选项:  

         选择“启动时不搜索软盘”  

         选择“优先引导原来MBR”(这个是实现SYSLINUX+GRUB4DOS双引导的关键选项,一定要选择这项。)  

         等待时间“默认是 5 秒”(你可以填一个你认为更适合的等待时间,也可以不填)  

         热键“默认是Space键”(如果你不想要空格键作为热键,在这里更改,建议大家不要更改)  

         其它的选项可以不用理会。

        四、SYSLINUX只要以下几个文件就可以了:  

    vesamenu.c32
    menu.c32
    memdisk
    chain.c32
    reboot.c32
    syslinux.bin>>>>>> 光盘中用isolinux.bin
    syslinux.cfg>>>>>> 这个文件一个文本文件,光盘中用isolinux.cfg
    back.png >>>>>>>>>> 这个是背景图片,也可以使用其它文件名或其它格式的图片
    syslinux.exe >>>>>> 如果是用BOOTICE(引导扇区制作工具)写入引导代码的,那么可以不用这个文件,其实这个文件写完代码就没有什么用处了

        五、SYSLINUX的子菜单 :

        只要再写一个.cfg格式的文本文件就可以了,

        怎么在主菜单调用

        格式如下(假设要调用的子菜单为 bt3.cfg):

    LABEL Loader Back Track 3 Menu
    MENU LABEL [02] -- Loader Back Track 3 Menu
    CONFIG /boot/syslinux/bt3.cfg  

        再推荐一个网站:http://www.easeboot.com/

        虽然很小但是非常不错的网站,一定要仔细的看才会知道的O。

点评

辛苦了  发表于 2024-5-13 06:41

评分

参与人数 5无忧币 +20 收起 理由
liangzr1976 + 3 很给力!希望能置顶
yyz2191958 + 2 赞一个!
brook + 5 很给力!
lookerJ + 5
freesoft00 + 5

查看全部评分

2#
发表于 2015-12-8 18:23:05 | 只看该作者
网站访问不了啊!!!
回复

使用道具 举报

3#
发表于 2016-1-23 15:01:48 | 只看该作者
够详细,对我们初学者  很有帮助  就是还有很多看不懂了  慢慢学  不懂得来请教 谢谢!  
回复

使用道具 举报

4#
发表于 2016-1-23 15:10:41 | 只看该作者
boot.cat 这个是什么文件 ?这个文章里没找到呢 ?
回复

使用道具 举报

5#
发表于 2016-1-23 15:26:05 | 只看该作者
再推荐一个网站:http://www.easeboot.com/

这个网站是不存在的吧
回复

使用道具 举报

6#
发表于 2016-2-20 09:34:43 | 只看该作者
谢谢分享。
回复

使用道具 举报

7#
发表于 2016-5-30 13:42:26 | 只看该作者
非常酷哦,不顶对不起良心
回复

使用道具 举报

8#
发表于 2016-10-3 00:35:00 | 只看该作者
新人学习的好资料!
回复

使用道具 举报

9#
发表于 2016-12-13 11:42:38 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

10#
发表于 2017-1-13 10:45:26 | 只看该作者
好资料啊.....................
回复

使用道具 举报

11#
发表于 2017-9-6 11:33:09 | 只看该作者
基础资料收藏,感谢楼主的分享。
回复

使用道具 举报

12#
发表于 2018-3-7 14:03:13 | 只看该作者
看见啦!
回复

使用道具 举报

13#
发表于 2019-1-5 00:01:22 来自手机 | 只看该作者
syslinux默认的启动分区是hd0,0  ,怎么引导hd0,1分区下的pe
回复

使用道具 举报

14#
发表于 2019-3-9 16:51:07 | 只看该作者
再推荐一个网站:http://www.easeboot.com/
无法访问此页面
回复

使用道具 举报

15#
发表于 2020-3-3 16:16:10 来自手机 | 只看该作者
回复

使用道具 举报

16#
发表于 2020-3-26 09:11:23 | 只看该作者
打不开网站
回复

使用道具 举报

17#
发表于 2020-4-13 19:24:57 | 只看该作者
谢谢楼主分享!
回复

使用道具 举报

18#
发表于 2020-4-20 13:49:29 | 只看该作者
这个网站已关了,它是有款小软件?
回复

使用道具 举报

19#
发表于 2020-6-8 12:55:02 | 只看该作者

好资料啊.....................
回复

使用道具 举报

20#
发表于 2020-8-21 14:11:02 来自手机 | 只看该作者
SYSLINUX 中文简介,支持
回复

使用道具 举报

21#
发表于 2020-8-22 13:58:18 | 只看该作者
谢谢分享。
回复

使用道具 举报

22#
发表于 2020-10-13 12:50:19 | 只看该作者
这个好
回复

使用道具 举报

23#
发表于 2021-6-18 22:01:37 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

24#
发表于 2021-6-18 23:23:15 | 只看该作者
资料是好资料 就是排版不便阅读
回复

使用道具 举报

25#
发表于 2022-1-25 09:22:48 来自手机 | 只看该作者
普及贴
回复

使用道具 举报

26#
发表于 2022-3-7 11:41:29 | 只看该作者
好东东,感谢分享
回复

使用道具 举报

27#
发表于 2022-5-28 19:50:57 | 只看该作者
先看看
回复

使用道具 举报

28#
发表于 2022-7-27 12:31:19 | 只看该作者
谢谢分享。
回复

使用道具 举报

29#
发表于 2022-9-14 18:47:07 | 只看该作者
多谢楼主分享的教程,学习学习
回复

使用道具 举报

30#
发表于 2022-10-11 07:07:54 来自手机 | 只看该作者
谢谢,非常需要
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-29 06:18

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表