|
[这个贴子最后由hnlyzhd在 2006/03/10 12:35pm 第 12 次编辑]
GRUB确实有很好的功能,有太多朋友不了解GRUB,所以在此开设GRUB专区,供大家学习交流,欢迎各位大侠发表意见!!!!!
***************************
严禁灌水,违者删除!!!!!!
***************************
★★★最新版GRUB4DOS下载
★★★
★★★GRUB中文主页★★★
####################################################################
常见GRUB相关问题精华贴(汇总)
1.GRUB怎么样做到光盘上去呢?用什么写到MBR里?
2.用GRUB开始引导的多重启动光盘?
3.GRUB多重启动管理器(入门教学文章)
4.ISOGRUB.BIN功能完善版.....
####################################################################
GRUB简体中文化版使用方法
by Gandalf<f22_storm@163.com>
一.功能概述
在本源上, Grub 是Linux的一个载入程序,正如 NTLDR 之于 Windows NT/2K/XP. 但是,它却拥有多引导的功能,而且还在不断得发展与完善之中. 当前,它的新功能如下:
1. 支持中文显示,背景图片;
2. 支持软盘虚拟功能,可以用以引导系统;
3. 支持硬盘虚拟,磁盘的映射(当然,还能激活/隐藏/创建分区);
4. 支持网络启动(包括网络虚拟软盘);
5. 支持光驱启动(拥有一个独立与BIOS的ATAPI设备的驱动程序);
6. 跨平台的支持;
7. 对多引导文件的支持;
二.基本概念及界面说明
A.基本概念
1. GRUB 里的设备命名法则
它使用了UNIX对设备的命名方法.比如我们拥有两块硬盘,那么采用这种形式(hdx,y), 这里,x,y, 都是从0开始计数的.所以两块硬盘是 (hd0,y),(hd1,y). 他们位于第一个IDE接口上.
(注, C: 为第一主分区, 其他分区是扩展分区.由于主分区只能有四个,即 0,1,2,3, 所以第一个扩展分区的编号从 4 开始.)
这是硬盘,那么光驱哪? 对,采用 (cd) 就可以了. 网络设备使用 (nd). 我估计,以后支持usb以后,可以使用 (ud). ;-) 欢迎你的参与,我们的开发还在继续.
那么,这里就要提及 GRUB 里的一个很首要的概念了, 即 "根(/)", 或者 root. 其实,它就是一个源一样的东西,与草木的"根"相类似. 在GRUB中,其它的文件对象都域于此. 所以,一旦你指定了一个根,后续的操作除非显示地说明,否则都是对"根"而言的.
其实在某种意义上来说,和相对/绝对路径有点关联性. ;-) 正如,你所猜到的那样, GRUB 使用 root 命令来指定根设备(通常都是文件系统).
B. 命令和参数
在古老的 dos 时代,这两个东东是很平常的. 可以认为,命令是程序的名称,参数是告诉程序如何作和怎么作.比如在 Grub 的控制台里:
GRUB>help scdrom
那么, help 就是命令, 而 scdrom 就是参数了. 它的意思是"给出 scdrom 命令的帮助信息."
C. 界面说明
首先,引导程序应该简单易用,菜单加鼠标是不错的主意.是的, GRUB 支持自定义的菜单选择功能项;但当前来说,它还不能支持鼠标的点选. 另外,为了更灵活, GRUB 还可以动态地编辑菜单项,这就是它的控制台功能(在控制台里,你可以使用 `ESC`键返回到主选菜单界面).
D. 关于菜单脚本文件
与 Windows NT 类似, GRUB 也提供了一个菜单生成文件,我们常称之以脚本.
通常情况下,我们把 GRUB 要用到地文件都放到 /boot/grub/ (这里我们省略了对根设备的指定, 所以完整的表示可能是 (hd0,0)/boot/grub ). 而菜单文件的默认名称是 menu.lst. 这里应该说明的是, 菜单文件里的注释是以"#"开头的, 而每一项菜单都必须指定一个标题(title),否则不但不能被显示出来,反而还作为了上一项的命令了.
三.功能详情及使用
1. 支持中文显示,背景图片;
1).中文的显示, 请使用:
fontfile FILE
实例: fontfile (hd0,0)/boot/grub/fonts
2). 背景图的使用:
splashimage FILE
实例: splashimage (hd0,0)/boot/grub/bj2008.xpm.gz
3). 图形菜单( gfxmenu ) 的使用:
gfxmenu FILE
实例: gfxmenu (hd0,0)/boot/grub/grub_chs.msg
[注] fontfile 的文件必须是 16 点阵字库;
splashimage 的文件必须是 640x480 14 色的 XPM 格式, 支持zip压缩;
gfxmenu 的文件当前只能使用 Linux 下的 mkbootmsg 工具生成.
2. 支持软盘虚拟功能,可以用以引导系统;
1). 使用 MEMDISK
kernel (hd0,0)/boot/grub/memdisk.gz
initrd (hd0,0)/boot/grub/win99.zip
boot 此项仅在命令行中使用,在菜单文件里无需指定)
2). 使用内建的 MAP
map (hd0,0)/boot/grub/win99.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
boot (同上)
[注] + 使用 memdisk 有很多好处. 首先它不需要磁盘镜像文件的连续存放,支持网络上,光盘上的磁盘镜像文件, 而且此文件可以使用 zip 压缩格式. 如果磁盘文件的原始大小不是 1.44/2.88MB, 那么,使用起来,就有一些技巧了:
1). 默认情况下, 将被视为硬盘的镜像文件(与使用 harddisk 效果相同, 故通常不用指定此参数);
2). 如果是软盘镜像文件,请使用 floppy 参数, 比如:
kernel (hd0,0)/boot/grub/memdisk.gz c=274 h=2 s=18 floppy
initrd (hd0,0)/boot/acronis/pe.zip
boot (同上)
=> 提示:可以使用新版的 Winimage 获取上述的 C/H/S 参数.
+ 用 MAP 命令是,磁盘镜像文件必须连续存放,大小上无限制.但是不支持网络/光盘上的文件,且不支持 zip 压缩了的文件.
3. 支持硬盘虚拟,磁盘的映射(当然,还能激活/隐藏/创建分区);
就硬盘虚拟功能而言, 在上一个段落里,我们已提及到了, 在应用上, 我们可以构造一个虚拟的磁盘环境来, 但是, 这个磁盘的访问是通过对 INT 13 的挂接来进行的, 这也就是为什么, 我们可以虚拟一个安装有 DOS/Win9X 的硬盘, 而对 Windows NT/2K/XP 就无能为力了, 即便是他们的恢复控制台(cmdcons).
而“磁盘的映射”, 通常不用, 故而也就不再此处讨论了.
4. 支持网络启动(包括网络虚拟软盘);
ifconfig --address=192.168.0.122 (本机使用的 IP 地址)
ifconfig --mask=255.255.255.0 (子网掩码)
ifconfig --gateway=192.168.0.254 (网关的 IP 地址)
ifconfig --server=192.168.0.1 (tftp 服务器的 IP 地址)
kernel (nd)/memdisk.gz
initrd (nd)/win99.gz (可以使用 zip 压缩的文件)
boot (同上)
5. 支持光驱启动(拥有一个独立与BIOS的ATAPI设备的驱动程序);
1). 如何让GRUB识别光驱
scdrom --install
安装成功后, 你可以将 root 设备指定到光盘上(root cd), 访问光盘上的内容(比如指定 memdisk: kernel (cd)/memdisk, 等等)
2). 如何跳转到光驱启动
scdrom --bootcd
这是"一去不复返"式的跳转, 如果成功的话. 如果失败,将返回 GRUB.
6. 跨平台的支持;
1). 在纯 DOS 下运行GRUB
使用配套的 GRUB.exe 程序.
2). 从光盘上直接启动GRUB(必须是非模拟方式的)
使用配套的 stage2_eltorito 文件作为启动文件.
3). 在 Linux 上运行 GRUB
使用配套的 grub 程序(elf 格式)即可. 可能需要修改运行权限(chmod a+x grub).
4). 无盘启动 GRUB
使用配套的 nbgrub/pxegrub 即可.
* 5). 使用 WinNT/2K/XP/LH 的引导器(NTLDR)载入GRUB *
使用配套的 grldr 即可.
如何作:
首先, 你一定要确认你的系统拥有 NTLDR 的引导功能, 然后打开它的配置文件( boot.ini, 这个文件通常在你的 "c:\"),进行修改. 请为 GRUB 新添如下一行到文件的末尾(注意, 请另起一行)
C:\GRLDR="Boot Grub with Full Set", 然后保存之.
当然你可能会得到信息说文件是只读的, 请修改它的属性后,再保存. 随后,请把压缩包里的 grldr 解到 C:\ 就可以了.
7. 对多引导文件的支持
我们假设文件所用到的文件位于 C:\ (hd0,0)
1). 硬盘扇区文件
root (hd0,0) (对使用硬盘的时候,一定要使用 hd, 这样才会传递引导盘符为 80H)
root (显示说明磁盘为 80H)
run /peloader.bin (运行之)
2). 光盘非模拟方式的引导文件
scdrom --install (初始化,安装光盘驱动)
root (cd) (指定引导盘符的操作)
root (显示说明磁盘为 80H)
run (hd0,0)/emurtosk.bin (运行之)
* 注: 所指定的文件要小于 32768 字节.
[ 本帖最后由 天风 于 2010-2-22 16:12 编辑 ] |
|