分享
 
 
 

GRUB基本使用说明

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

GRUB是一个多重开机管理工具,它可用来激活Linux、BSD、OS/2、BeOS与Windows95/98/NT等众多操作系统,GRUB是一个独立于操作系统之外的开机程序,并不像LILO是依靠Linux才能进行设定与维护,也提供了类似Bash的命令列模式,让使用者更方便地设定GRUB。

取得与安装GRUB:

GRUB的原始码压缩档可至GNU的ftp站台( ftp://alpha.gnu.org/gnu/GRUB/ )下载最新版本 ,下载回来后可存放在/usr/local/src/目录下并将其解压缩:

cp grub.tar.gz /usr/local/src/

tar zxvf grub.tar.gz

在GRUB的目录下执行configure文件、make与make install,如下:

./configure

make

make install

当make install完成后GRUB也已顺利安装完毕,并有三个指令文件也被安装至系统中:grub、grub-install与mbchk。而GRUB的相关档案通常被安装到/usr/local/share/grub的目录下。

接下来先假设硬盘分割如下:

hda1:Windows98 (hd0,0)

hda2:Slackware Linux (hd0,1)

hdb1:Mandrake Linux (hd1,0)

注意的是GRUB认硬盘的方式跟Linux是不一样的,在Linux中第一颗IDE硬盘是hda(SCSI:sda)以此类推,而GRUB则将第一颗IDE硬盘视为hd0(SCSI:sd0)以此类推;在Linux中第一颗IDE硬盘的第一个分割区是hda1(SCSI:sda1)以此类推,而GRUB将第一颗IDE硬盘的第一个分割区表示为hd0,0(SCSI:sd0,0)以此类推。

制作GRUB激活磁盘:

制作GRUB激活磁盘其实不难,首先需要两个必备档案,分别是stage1与stage2,可以在GRUB的安装目录下的i386-pc目录中找到这两个档案,以及一片已格式化的干净磁盘,然后依照下面的制作步骤就可制作出GRUB的激活磁盘:

cd /usr/local/share/grub/i386-pc/

dd if=stage1 of=/dev/fd0 bs=512 count=1

dd if=stage2 of=/dev/fd0 bs=512 seek=1

制作好了GRUB的开机磁盘之后,就可以试着使用GRUB来进行多重操作系统的开机激活。

利用GRUB开机磁盘激活系统:

接着重新激活系统并设定BIOS由磁盘开机,然后就可以看到grub的命令列正等待指令,这就是GRUB的命令列环境,表示GRUB已顺利地从激活磁盘加载并正常运作当中了。现在假设要激活上述的Slackware Linux的话,在GRUB提示符号下键入如下的指令,如此就会进入Slackware Linux系统:

grub root (hd0,1)

grub kernel /boot/vmlinuz root=/dev/hda2 ro

grub boot

root指令会mount后面参数的硬盘分割区位置。当mount完成后kernel指令会加载其参数的系统核心,Linux的核心通常是在/boot目录下名为vmlinuz的档案。最后的两个参数都是要传给刚加载的核心,root=/dev/hda2是告诉核心根目录的位置是在/dev/hda2,并要求挂载成只读(ro)。

最后执行boot指令以进行Slackware系统的开机激活。同理,位在hdb1上的Mandrake Linux也可以用类似的方式激活:

grub root (hd1,0)

grub kernel /boot/vmlinuz root=/dev/hdb1 ro

grub boot

现在root指令改mount (hd1,0)的分割区,此分割区就是Mandrake Linux的根目录位置。然后kernel指令加载Mandrake的核心文件,告诉核心Mandrake系统的根目录是在/dev/hdb1,并要求挂载成只读。最后以boot指令进行系统的激活。

以上的方式都可以顺利地激活Linux系统,但是对Windows系统可是不管用的,要激活在hda1上的Windows98的话,则要换些指令才行得通,请在GRUB命令列中依序键入下列指令就可以进入Windows98:

grub rootnoverify (hd0,0)

grub chainloader +1

grub makeactive

grub boot

以rootnoverity指令让GRUB不要mount (hd0,0)的分割区,只要知道待会是要激活此分割区上的操作系统。chainloader +1的意思是指定此分割区上的第一个扇区来做激活。makeactive指令是要在此分割区上设定active的旗标,只要是Windows的操作系统都是要这么做的。最后以boor指令进行开机。

使用硬盘上的GRUB开机激活:

GRUB的开机磁盘固然方便好用,但制作GRUB开机磁盘的目的只在于系统救援之用,要能确实享用GRUB的强大功能,最好是可以用硬盘上的GRUB来进行开机,就像LILO一样安装到硬盘的MBR上。

首先要在系统上建立GRUB专用的开机目录/boot/grub,如同制作GRUB的开机磁盘一样须要stage1文件和stage2?,所以请把GRUB安装目录下的i386-pc目录中的stage1文件和stage2?copy到刚刚建立的/boot/grub目录底下:

mkdir /boot/grub

cp /usr/local/share/grub/i386-pc/stage* /boot/grub

完成之后键入指令GRUB指令进入GRUB命令列环境,在GRUB命令列环境里键入如下的指令:

grub root (hd0,2)

grub setup (hd0)

grub quit

如此即可完成GRUB在/boot/grub中的开机设定,先用root指令mount目录/boot/grub所在的位置,其中的(hd0,2)就是指上面假设的Slackware系统,也就是说/boot/grub目录是在Slackware系统中所建立的。所若是要改成由Windows98来放置GRUB的stage档的话,就要在Windows98的系统上建立/boot/grub的目录,并将stage1?和stage2?存放在Windows98上的\boot\grub目录里,而root指令的参数也要改为Windows98所在的分割区,也就是上面假设的(hd0,0)。第二个指令setup是指要将GRUB安装在哪个位置来开机激活,如果是要安装到硬盘的MBR上的话只须加上硬盘的位置如(hd0),若是要安装到硬盘第一个分割区上的第一个扇区的话就要加上分割区的位置如(hd0,0)。

除非是有特殊的情况,不然最好是装在硬盘的分割区上较安全。最后使用quit指令离开GRUB命令列环境。

使用选项清单:

现在虽然可以用GRUB来做多重开机的管理,但每次都要输入繁杂的指令也不方便,因此GRUB也提供了选项清单的方式,让每次开机时只须按上下键选择要开机的系统再按下Enter键即可进行开机而不必再输入任何的指令。GRUB在开机时会先寻找/boot/grub目录下的menu.lst档,找到的话GRUB就会依照menu.lst文件的内容显示一个选项清单的图形接口,让使用者选择要开机的操作系统。

首先在/boot/grub目录下建立一个新档名为menu.lst,底下是menu.lst文件的设定范例:

#/boot/grub/menu.lst

timeout 30

default 0 #Default Slackware Linux

fallback 1 #Windows98

fallback 2 #Mandrake Linux

color light-green/brown blink-red/blue

# For booting Slackware Linux

title Slackware

root (hd0,1)

kernel /boot/vmlinuz root=/dev/hda2 ro

#For booting Windows

title Windows98

rootnoverify (hd0,0)

chainloader +1

makeactive

#For booting Mandrake Linux

title Mandrake

root (hd1,1)

kernel /boot/vmlinuz root=/dev/hdb1 ro

上面menu.lst文件的范例是针对之前所假设的硬盘分割区上配置的操作系统而设定的。menu.lst是以#符号当作注解的开头,GRUB会忽略所有以#符号启始的注解行。timeout指令是指GRUB激活之后的等待时间,以秒为单位,所以上面的范例就是等待30秒的意思。default指令就是当GRUB激活之后等待的时间超过指令timeout所设定的时间的话,就会指令default后面参数所指定的系统,参数0代表menu.lst文件中第一个被设定的操作系统,以上面的范例而言就是指Slackware Linux,因为它是最先被设定的,如果参数改为1的话就是激活Windows98,以此类推。fallback指令是指当GRUB激活指令default所指定的操作系统失败的话,便会激活指令fallback所指定的操作系统,以上面的范例而言,当Slackware激活失败的话GRUB就会激活fallback所指定的便是Windows98。指令color可以设定GRUB选项清单的前景/背景的颜色,有关GRUB可以指定的颜色可以查看GRUB的info文件。接下来的指令就是设定操作系统,指令title可以设定该操作系统的标题。

设定好menu.lst文件后,将此设定文件存在/boot/grub目录底下即可,然后重新开机便会看到GRUB漂亮的选项清单,现在就可以试着激活不同的操作系统了。

以上是GRUB的基本使用说明,当硬盘上有许多的操作系统时,使用GRUB是理所当然的,并且是正确的选择,就算硬盘上只有一两种操作系统也可以使用GRUB。当然GRUB的功能是很强大的,已足以取代传统的LILO,可以多阅读GRUB的info文件里面的说明。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有