注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

往事如烟

科技创造价值

 
 
 

日志

 
 

GRUB4DOS示例菜单详解  

2013-10-10 09:01:19|  分类: 常规教程 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

GRUB4DOS 0.4.5b示例菜单

一、grldr内置菜单

pxe detect
# 指定pxe服务器上的pxe包大小及配置文件,这里命令不带任何参数,那么menu.lst 子目录中的标准配置文件将获得控制
configfile
# 加载指定的配置文件,这里命令后面不带任何参数(文件名),那么控制将转到启动设备上的menu.lst文件 

default 0
# 设置默认引导菜单号为0
timeout
1
# 启动默认菜单的等待时间为1秒

title find /menu.lst, /boot/grub/menu.lst, /grub/menu.lst
# 菜单标题“查找/menu.lst, /boot/grub/menu.lst, /grub/menu.lst”
         errorcheck off
# 关闭错误检查,执行中遇到错误将忽略,直至执行完毕,参数为on时打开错误检查,遇到错误将终止执行
         configfile
/menu.lst || configfile /MENU.LST
# 加载配置文件menu.lst,如果失败就加载MENU.LST
         configfile /boot/grub/menu.lst || configfile /BOOT/GRUB/MENU.LST
         configfile /grub/menu.lst || configfile /GRUB/MENU.LST
         find --set-root --ignore-floppies --ignore-cd /menu.lst && configfile /menu.lst
# 查找menu.lst并将此目录设置为根分区,忽略软驱、光驱,如果成功就加载配置文件menu.lst
         find --set-root --ignore-floppies --ignore-cd /boot/grub/menu.lst && configfile /boot/grub/menu.lst
         find --set-root --ignore-floppies --ignore-cd /grub/menu.lst && configfile /grub/menu.lst
         errorcheck on
# 打开错误检查,遇到错误将终止执行
         commandline
# 命令行

title commandline
# 菜单标题“命令行”
         commandline
# 命令行

title reboot
# 菜单标题“重新启动”
         reboot
# 重新启动命令

title halt
# 菜单标题“关机”
         halt
# 关机命令

GRUB4DOS菜单实例 - 往事如烟 - 往事如烟

 二、grldr外置菜单

grldr外置菜单文件是MENU.LST。

# This is a sample menu.lst file. You should make some changes to it.
# The old install method of booting via the stage-files has been removed.
# Please install GRLDR boot strap code to MBR with the bootlace.com
# utility under DOS/Win9x or Linux.

color blue/green yellow/red white/magenta white/magenta
# 指定 菜单 未选中时的前景/背景(蓝色/绿色 选中时的前景/背景(黄色/红色) 帮助文本前景/背景(白色/粉红  标题前景/背景白色/粉红
timeout
30
# 启动默认菜单的等待时间为30秒
default /default
# 设置默认菜单项预设文件,其值由savedefault设定,第一项为0、依次为1,2……

title find and load NTLDR of Windows NT/2K/XP
# 第0项菜单标题 “查找并加载NTLDR of Windows NT/2K/XP”
fallback
1
# 如果调用当前的菜单项时出现错误,则转移到第“1”项菜单后重试
find
--set-root --ignore-floppies --ignore-cd /ntldr
# 查找第一个“ntldr”,并将此目录设置为根分区,忽略软驱、光驱
map () (hd0)
map (hd0) ()
map --rehook
# 改变驱动器映射后,使映射(仿真)重新生效
find --set-root --ignore-floppies --ignore-cd /ntldr
# 查找第一个“ntldr”,并将此分区设置为根分区,忽略软驱、光驱
chainloader
/ntldr
# 加载“ntldr”,并引导,在命令行下必须添加boot命令,菜单下可以省略, chainloader 可以直接加载 MBR、DBR、ntldr、bootmgr等
savedefault
--wait=2
# 保存此菜单项“编号”到default设置的引导菜单项预设文件中,提示时间为2秒

title find and load BOOTMGR of Windows VISTA
fallback 2
find --set-root --ignore-floppies --ignore-cd /bootmgr
map () (hd0)
map (hd0) ()
map --rehook
find --set-root --ignore-floppies --ignore-cd /bootmgr
chainloader /bootmgr
savedefault --wait=2

title find and load CMLDR, the Recovery Console of Windows NT/2K/XP
fallback 3
find --set-root --ignore-floppies --ignore-cd /cmldr
map () (hd0)
map (hd0) ()
map --rehook
find --set-root --ignore-floppies --ignore-cd /cmldr
chainloader /cmldr
#####################################################################
# write string "cmdcons" to memory 0000:7C03 in 2 steps:
#####################################################################
# step 1. Write 4 chars "cmdc" at 0000:7C03

write 0x7C03 0x63646D63
# step 2. Write 3 chars "ons" and an ending null at 0000:7C07
write 0x7C07 0x00736E6F
savedefault --wait=2

title find and load IO.SYS of Windows 9x/Me
fallback 4
find --set-root /io.sys
chainloader /io.sys
savedefault --wait=2

title find and boot 0PE.ISO
# 菜单标题“查找并启动0PE.ISO镜像”
fallback
5
# 如果调用当前的菜单项时出现错误,则转移到第“5项菜单后重试
find
--set-root /0PE/0PE.ISO
# 查找“/0PE/0PE.ISO”,并将此分区设置为根分区
map /0PE/0PE.ISO (0xff) || map --mem /0PE/0PE.ISO (0xff)
# 仿真0PE.ISO镜像为“0xff”号光驱,如果失败就先加载到内存再仿真
# 仿真的驱动器可以为fd(软驱)、hd(硬盘)、cd(光驱),设备的BIOS标识号fd0对应0x00,hd0对应0x80,
# cd0对应0xA0(也就是hd32,光驱号直到0xff),
map --hook
# 使仿真立即生效
chainloader
(0xff)
# 加载0xff”号光驱,并引导,在命令行下必须添加boot命令,菜单下可以省略
savedefault
--wait=2
# 保存此菜单项“编号”到default
设置的菜单项预设文件中,提示时间为2秒

title find and boot MicroPE.ISO
fallback 6
find --set-root /boot/MicroPE.ISO
map /boot/MicroPE.ISO (0xff) || map --mem /boot/MicroPE.ISO (0xff)
map --hook
chainloader (0xff)
savedefault --wait=2

title Parted Magic ISO
fallback 7
find --set-root /pmagic.iso
map /pmagic.iso (0xff) || map --mem /pmagic.iso (0xff)
map --hook
chainloader (0xff)
savedefault --wait=2

title Ultimate Boot CD ISO
fallback 8
find --set-root /ubcd.iso
map /ubcd.iso (0xff) || map --mem /ubcd.iso (0xff)
map --hook
chainloader (0xff)
savedefault --wait=2

title commandline
commandline

title floppy (fd0)
# 菜单标题“软驱(启动)”
chainloader
(fd0)+1
# 加载第一个软驱的从0开始的“1”个扇区,即软盘的主引导扇区,并引导,在命令行下必须添加boot命令,菜单下可以省略
rootnoverify (fd0)
# 指定根分区为第一个软驱

title back to dos
# 菜单标题“返回到dos”
quit
# 退出命令

title reboot
# 菜单标题“重新启动”
reboot
# 重新启动命令

title halt
# 菜单标题“关机”
halt
# 关机命令

title MAXDOS.IMG
# 菜单标题“MAXDOS”
find --set-root --ignore-floppies /boot/MAXDOS.IMG
# 查找“/boot/MAXDOS.IMG”,并将此分区设置为根分区,忽略软驱
map --mem /boot/MAXDOS.IMG (fd0)
# 加载MAXDOS软盘镜像到内存在仿真为第一个软驱
map
--hook
# 仿真立即生效
chainloader (fd0)+1
# 加载第一个软驱的从0开始的“1”个扇区,即软盘的主引导扇区,并引导,
rootnoverify
(fd0)
# 指定根分区为第一个软驱

GRUB4DOS菜单实例 - 往事如烟 - 往事如烟

GRUB4DOS中有实现了简单的脚本支持。目前实现了 && 和 || 两种操作:
command1 && command2   只有当 command1 的返回值是真时,command2 才被执行
command1 || command2      只有当 command1 的返回值是假时,command2 才被执行  

三、GRUB4DOS 中文支持的三种方式

GRUB4DOS 发布有中文版,大大方便了中文用户。 可选三种方式加载中文支持:
    A,使用(0.4.5b以前)中文版grldr配合内置命令 fontfile 加载中文字库来显示中文菜单(菜单文件需使用 ANSI 文本编码模式,否则中文会显示为乱码);
    B,使用(0.4.6a以后)英文版grldr配合内置命令 font 加载中文字库来显示中文菜单(菜单文件需使用 UTF-8 文本编码模式,否则中文会显示为乱码);
    C,使用内置命令 gfxmenu 加载 message 文件来显示中文菜单(菜单文件需使用 UTF-8 文本编码模式,否则中文会显示为乱码);
     (正常情况下方式C显示效果最好,但有可能出错)。

英文版grldr在文件包根目录下,中文版grldr在文件包根目录下的chinsee目录下。

  评论这张
 
阅读(15220)| 评论(1)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017