GRUB4DOS详解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

GRUB4DOS详解
GRUB4DOS是⼀个优秀的双(多)系统引导软件,使⽤GRUB4DOS可以很⽅便的引导各种操作系统,⽐如DOS、Windows、 Linux等。

命令索引
blocklist 输出⽂件的块清单表达法。

boot 引导已加载的操作系统或扇区链式加载器。

bootp 通过BOOTP初始化⽹络设备。

cat 显⽰指定⽂件的内容。

cdrom 初始化或者停⽌所有的 ATAPI CDROM 设备。

chainloader 加载扇区链式加载器。

cmp ⽐较两个⽂件, 并且报告两者之间的差异。

color 改变菜单的颜⾊。

configfile 将指定⽂件作为配置⽂件予以加载。

debug 打开/关闭调试模式。

default 把 NUM 项菜单设为缺省值。

device 声明BIOS驱动器对应的实际物理设备。

dhcp 通过DHCP初试化⽹络设备。

splashimage 图形模式下载⼊背景图⽚⽂件。

foreground 设置图形模式下的前景⾊。

background 设置图形模式下的背景⾊。

clear 清屏。

displayapm 显⽰ APM BIOS 的相关信息。

displaymem 显⽰ GRUB 所判断到的当前系统的内存分布,包括所有物理内存区域。

displaymem 显⽰诸多⽂件的内容。

embed 如果设备是个驱动器, 则将Stage 1.5嵌⼊到主引导扇区之后。

fallback 如果调⽤当前的菜单项时出现错误,则跳转到 NUM 项后重试。

commandline 进⼊命令⾏⽅式。

find 在所有分区上查找⽂件名, 并显⽰包含该⽂件的设备。

fstest 切换⽂件系统的试验模式。

geometry 输出驱动器的相关信息。

halt 关闭系统(计算机)。

help 显⽰内部命令的帮助信息。

hiddenmenu 隐藏菜单。

hide 通过在分区类型上置隐藏标志,隐藏指定分区。

ifconfig 指定 IP 地址, ⼦⽹掩码, ⽹关和服务器地址。

不带参数时,将显⽰当前的⽹络配置。

impsprobe 探测 Intel 多处理器规范 1.1/1.4 配置表并使所找到的各处理器启动进⼊闭循环。

initrd 加载Linux格式的初始化虚拟盘, 并设置必要的参数。

install 安装STAGE1到指定设备上,安装加载STAGE2需要的块列表到STAGE2上。

ioprobe 侦测指定设备的 I/O 端⼝号。

kernel 尝试载⼊主引导影像⽂件(Linux内核格式)。

lock 如果⽤户未被认证,则终⽌命令的执⾏。

makeactive 将 root 设备置为活动分区。

map 对设备进⾏映射。

md5crypt 产⽣⼀个 MD5 格式的密码。

module 对多重启动影像, 加载启动模块⽂件 (不处理该⽂件的内容, ⽤户必须⾃⼰确定核⼼的要求)。

modulenounzip 与 'module' 类似, 但是禁⽤了⾃动解压缩。

pager 没有参数时,切换页模式。

partnew 创建⼀个新的主分区。

parttype 改变指定分区(PARTITION)的分区类型(TYPE)。

password 设置密码。

pause 终⽌命令的运⾏,并给出⼀段信息。

任意键按下后,将继续。

quit 从 GRUB 命令⾏中退出。

rarp ⽤ RARP 初始化⽹络设备。

read 从内存的指定位置读取⼀个 32-bit 的值,并以⼗六进制形式显⽰出来。

write 写⼀个 32 位的值 VAL 到内存地址 ADDR。

reboot 重启系统(计算机)。

fontfile 指定中⽂字体⽂件,并切换到中⽂显⽰⽅式。

root 设置根分区。

rootnoverify 类似`root'指令, 但不测试安装该分区。

savedefault 将当前项设置为默认的引导项。

serial 初始化⼀个串⼝设备。

setkey 改变键盘映射关系。

setup ⾃动安装GRUB.
terminal 选择⼀个终端。

terminfo 指定终端的功能。

testload 以多种不同的⽅式读取⽂件(由FILE指定)的整个内容,并予以⽐较,以测试⽂件系统的代码。

testvbe 测试所指定(MODE)的 VBE 模式。

setvbe 为后续的每个kernel命令⾏设置VBE模式。

tftpserver 指定 TFTP 服务器的 IP 地址。

timeout 设置在⾃动启动缺省菜单前所等待的秒数。

title 命名菜单项。

unhide 通过清除隐藏标志,解除指定分区(PARTITION)的隐藏。

uppermem 强制指定仅有(KBYTES) KB 的上位内存。

vbeprobe 侦测 VBE 的信息。

使⽤说明
解压GRUB4DOS后,将其中的grub.exe⽂件放在你的⼀个FAT32分区中。

具体修复过程如下:
1.使⽤DOS启动盘或Windows 98的启动盘启动到DOS模式下,然后键⼊:d:\tmp\grub.exe 这⾥的d:\tmp是笔者解压缩GRUB4DOS的⽬录。

这样就进⼊了GRUB环境,可以看到⼀个 grub>提⽰符。

2.恢复GRUB引导记录。

在 grub> 提⽰符下键⼊:
root (hdx,y)
kernel (hdx,y)/boot/yourkernelname ro root=/dev/hdxx
setup (hd0)
上⾯第⼀条命令是指定你的/boot分区位置,如果/boot没有单独分区,那么就是你的/分区。

第⼆条命令指定内核位置,具体位置根据⾃⼰的实际情况确定。

第三条命令是将GRUB引导记录写⼊MBR。

如果对Linux分区位置不⼗分清楚,可以使⽤Tab键补全功能来查看确定。

执⾏完setup命令后会看到“succeed!”字样,此时重启即可。

3.如果只是想启动Linux,⽽不是修复GRUB,那么可以在进⼊DOS后键⼊下⾯命令启动你的Linux系统。

d:\tmp\grub.exe --config-file=(hdx,y)/boot/grub/grub.conf
其中参数同上。

wingrub(GRUB4DOS)的安装:
1、下载地址:
在上⾯的⽹址中,有下载页⾯,⾥⾯说的就是wingrub;
2、安装:
1]安装grub软件到机器中,点⿏标应该会吧,就直接按它默认的安装,下⼀步、下⼀步就安装好了;
2]安装grub;
打开 wingrub程序,选择 tools菜单,然后点击 install grub ,出来⼀个对话框;
这⾥⾯有两个⽅法供我们选择;(个⼈建议选B)
A) 我们直接点⼀下Boot From Grub Partion 就⾏,然后点击,右边的下接框;选择要安装在哪个分区中,然后按最下边的[install];
您可能在下拉的菜单的对话框中,看到的是 (hd0,0)或者 (hd0,1)等,那就选(hd0,0);如果您只看到(hd0,1),说明您的第⼀个分区是NTFS的,这也没有什么,很正常;如果您看不到什么下拉框,您就看下⾯的办法;
B)您可以点 Systerm Device ,然后在右边的选择框中,选C ;然后再点BOOT FROM BOOT.INI 就好,如果不⾏就换;在Title 中写⼊mygrub ;然后在 Time OUT 写上 10;
这样grub就安装好了;他的配置⽂件在 c:\grub\中,配置⽂件是c:\grub\menu.lst ,这个配置⽂件起到决定性作⽤;所以我们⼀定要写好;语法和Linux中的没有区别;是⼀样的;
A和B还是有点⼩⼩的区别,A的⽅法是开机就能看到所有的在menu.lst中系统;⽽ B,则必须按⼀下刚才我们所填写的mygrub ,然后才能看到在menu.lst所提到的系统;
3、配置 grub ;
其实最简单的配置⽅法不是来⾃于图形的点⿏标,初学Linux的弟兄可能会说,我不点⿏标,我能做什么?呵。

没错,但在配置grub的过程中,最没有效率的就是点⿏标;其实我们点了⼗⼏分钟的⿏标,也是达到⼀个⽬的,就是把grub配置起来。

⽽他的配置⽂件就是c:\grub \menu.lst ,我们挥汗如⾬的点⿏标,⽆⾮是配置这个⽂件;如果不⽤点⿏标的办法来配置,
⼀分钟都不到就OK ;只要掌握⼀点⼩⼩的技巧;有何难呢??
在配置 c:\grub\menu.lst的过程中,我们只是再⽤⼀下 wingrub的查看分区的界⾯,其它的只是⽤记事本就能写好;c:\grub是隐藏起来的,我们要在游览器中加⼊c:\grub 就
可以看得到;
0]打开wingrub,点tools =》partioinlist (分区列表),这⾥能了解到机器的分区,⽐如我们可能看到的 FAT32的分区是 (hd0,1)等等,事实上,我们的确需要fat32分来来存放下载的Linux光盘映象;我们通过这个能知道我们把光盘ISO存放到(hdX,Y)了,也能知道(hdX,Y)所对应的Windows分区的是哪个,是C,还是D ,还是E ,明⽩了吧;
1]⾸先我们找⼀个FAT 32的分区,把下载下来的ISO直接放到分区的根⽬录下⾯,不要放在任何⽬录中;
2]还是在这个分区,建⼀个⽬录,⽐如是linux,从下来下来的第⼀张ISO中isolinux中抽取 vmlinuz 和 initrd.img 两个⽂件,放到linux⽬录中;注意只放这两个⽂件,不要放其它的内容,如果放了其它的,可能出现安装到中途退出的情况;
注意:⽬录是名是⼩写的;在书写menu.lst 时,我们要⽤半⾓英⽂,标点之类的全是半⾓的;title root kernel initrd 全是⼩写的英⽂;切注意⼤⼩写;
3]书写menu.lst ,怎么书写,对我来说难吗?不难!
我们打开menu.lst 后,可能⾥⾯已经有内容了,⽐如有个 timeout 10 ,如果没有这⾏可以⾃⼰写上;没有什么难的;
timeout 10 #这是开机等待进⼊系统的时间,是10秒
title WindowsXP # 我们的机器中都有 windows ,这个就是⽤来启动windows的;总共有四⾏,不要弄错了,可以照抄到你的配置⽂件中;
root (hd0,0)
makeactive
chainloader +1
简单的 menu.lst 配置 linux 引导说明;通过menu.lst ,我们可以配置 Linux的启动和引导;不只是安装的引导,也可以引导已经安装好的Linux系统;语法结构有下的四条,举例如下:总共
有两个书写格式,任选其⼀;
格式⼀:最简单:
代码:
title redflag5
root (hd0,1)
kernel (hd0,1)/linux/vmlinuz
initrd (hd0,1)/linux/initrd.img
title 这⾏就是我们在开机时,所看到的菜单,显⽰的就是 redflag5 ,要加在 title 的后⾯,title是必须保留的,是grub的语法的标签,我们可以在title 后⾯写我们想要加的东西,这是⾃⼰可
以定义的,⽐如 title redflag5也是可以的;
root (hd0,1) 这⾏能⽤以root开头,然后加⼀个空格,⾄于您把vmlinuz和initrd.img 放在哪个分区了,⽤打开 wingrub,点tools
=》partioinlist (分区列表)中查到
kernel 这⾏,以kernel 开头,然后加⼀个空格,主要说的是vmlinuz⽂件放在哪个分区,哪个⽬录了;除了kernel 后⾯有⼀个空格外,在这⾏中,其它地⽅没有空格;这⾏说的是我们⽤放在(hd0,1)分区下的linux⽬录中的kernel 来内核来启动;
initrd 这⾏,和 kernel 那⾏类似;没有什么难的,⾃⼰的⽂件放在哪个分区,哪个⽬录了,⾃⼰最知道吧;
格式⼆:⽐较⿇烦⼀点:理解着看吧;
代码:
title redflag5
root (hd0,1)
kernel /linux/vmlinuz ro root=/dev/hda6
initrd /linux/initrd.img
title 这⾏就是我们在开机时,所看到的菜单,显⽰的就是 redflag5 ,要加在 title 的后⾯,title是必须保留的,是grub的语法的标签,我们可以在title 后⾯写我们想要加的东西,这是⾃⼰可以定义的,⽐如 title fc4setup也是可以的;
root 这⾏,在本例中是 root (hd0,1),这⾏就是我们打开 wingrub,点tools =》partioinlist (分区列表)中查到的;我们通过这个知道我们把解压出来的 vmlinuz和initrd.img 所处的分区和路径;。

相关文档
最新文档