现在的位置: 首页 > 综合 > 正文

grub 引导文件配置

2013年12月10日 ⁄ 综合 ⁄ 共 1743字 ⁄ 字号 评论关闭

some of the following is copyright by tomsen

 

主要相关目录:/boot/grub 在其中重点关注menu.lst,stage1,stage2(系统启动第一阶段和第二阶段)

 

a) menu.lst:

 

# fllowing is my put


title hello world
   /* the systems's name */
root (hd0,0)
/* boot the first hard disk,the first partition */
kernel /home/tomsen/work/ccu/hello_world_c/o-optimize/hello.exe
 /* the kernel's path */

quiet


belove the text , i shoud explaim clearly the (hd0,0).

第一个硬盘是hd0,第二个硬盘是hd1.当说hd0的时候,hd0就是指硬盘,而 (hd0,0)表示第一个硬盘的C盘, 而D盘是从4开始的,例如D 盘(hd0,4) ,E盘(hd0,5),F盘(hd0,6),依次向后。
当说hda,hdb的时候,这是指windows的盘符,当接在硬盘接口在主板的接口位置不同的时候,有的是hda,有的是hdb,有的hdc,有的是 sata硬盘,那就是 sda 。C盘是hda1,或者hdb1,hdc1,这里你的是hda1,而相应的D盘是从5开始的,和前面的表示是不一样的,D盘是 hda5, E盘是hda6, F盘是hda7等等. 

主分区就是 (hd0,0)-(hd0,3)部分,或者这样表示hda1-hda4. 逻辑分区就是(hd0,4)-(hd0-N),这里N>4,或者这样表示hda5-hdaN+ 1,这里你明白了吧,逻辑分区是从D盘开始的,而主分区就是前面的部分。

 

b) 安装GRUB到MBR

GRUB在启动中,被BIOS调用,只有放在MBR中才可以被调用,所以,GRUB要让BIOS调用,就必须安装在MBR中。实际上是将 stage1安装到MBR中,也可能根据文件系统选择安装了stage1_5。下面,提供几个安装GRUB的例子:

#grub-install /dev/hda //将GRUB安装到第1块IDE硬盘的MBR

#grub-install /dev/sda //将GRUB安装到第1块SCSI硬盘的MBR

#grub-install /dev/fd0 //将GRUB安装到软盘

#grub-install /dev/hda1 //将GRUB安装到第1快硬盘的0扇区,当用其它引导程序引导系统时,往往选择这种方式,以免覆盖其它引导程 序。

 

c) 在GRUB的命令行模式下安装GRUB

在系统显示启动菜单时候按下c键,或者系统启动后在命令行执行/usr/sbin/grub程序,都可以进入GRUB的命令行模式。命令行模式 下安装GRUB的基本过程如下:

 

 指定启动设备

 

grub>root (hd0,0) #除了root后必须有空格,别的位置均不能有空格!

 

此处(hd0,0)是指第1块硬盘的第1个分区。如果不能确定包含GRUB的stage1文件的分区,可以通过find指令查找确定:

grub> find /boot/grub/stage1 #查找stage1

 

GRUB将会查找文件/boot/grub/stage1并显示包含这个文件的设备名,这个设备就是上面要用到的设备。

 

  安装GRUB

grub> setup (hd0) #除了setup后必须有空格,别的位置均不能有空格!

 

这条命令将会在第1块硬盘的MBR安装GRUB,如果不想在MBR安装GRUB,而是希望将GRUB安装在某分区的引导扇区的话,可以用下面的 命令安装:

grub> setup (hd0,0) #除了setup后必须有空格,别的位置均不能有空格!

这将会在第1块硬盘的第1个分区的引导扇区安装GRUB。

q 退出GRUB

grub>quit

 

d) 重启机器,新安装的GRUB生效

 

在命令行中可以输入其他的比如

 

kernel /vmlinuz-2.4.18 ro root=LABEL=/ #内核在/boot中

initrd /initrd-2.4.18-14.img #启动RAM盘在/boot下

 

其他可以再grub命令行下输入help查看相关的用法,

grub > help

 

 

抱歉!评论已关闭.