嵌入式linux的GRUB启动脚本

  • 格式:doc
  • 大小:234.74 KB
  • 文档页数:10

----WORD格式--可编辑----

----

GRUB

百科名片

GNU GRUB (简称 “ GRUB”)是一个来自 GNU 项目的多操作系统启动程序。 GRUB 是多启

动规范的实现, 它允许用户可以在计算机内同时拥有多个操作系统, 并在计算机启动时选择

希望运行的操作系统。 GRUB 可用于选择操作系统分区上的不同内核,也可用于向这些内

核传递启动参数。

目录 [隐藏 ]

一 . 了解一下 x86 的引导过程

二.grub 下的设备名称

三.GRUB 的根文件系统

四.grub 的接口

五.Menu.lst 的命令六。例子

七. 用 WinGrub 来引导 Linux 安装

一 . 了解一下 x86 的引导过程

二 .grub 下的设备名称

三.GRUB 的根文件系统

四.grub 的接口

五.Menu.lst 的命令六。例子

七. 用 WinGrub 来引导 Linux 安装

什么是 Grub

GNU GRUB 是一个多重操作系统启动管理器。用来引导不同系统,如 window

s, linux 。

[编辑本段 ]

一 .了解一下 x86 的引导过程 ----WORD格式--可编辑----

----

由硬盘启动时, BIOS 通常是转向第一块硬盘最初的几个扇区,即 主引导记录 。

装载 GRUB 和操作系统的过程,包括以下几个操作步骤:

1 、装载主引导记录。基本引导装载程序所做的唯一的事情就是装载第二引导装载程序。。

2 、装载 Grub 。这第二引导装载程序实际上是引出更高级的功能 ,以允许用户

装载入一个特定的操作系统。

3 、装载在一个特定分区上的操作系统,如 linux 内核。 GRUB 把机器的控制权移

交给操作系统。

不同的是,微软操作系统都是使用一种称为链式装载的引导方法来启动的,主引

导记录仅仅是简单地指向操作系统所在分区的第一个扇区。

[编辑本段 ]

二 .grub 下的设备名称

硬盘都是用

hd

开始。软盘用

fd

开头。命名和

linux

不大一样。是从

0 算起。

(hd0,0)

。表示 C 盘。

(hd0,4)

。表示 D 盘。当然这里指的是 (第一个逻辑分区 ,如果 D 盘也是主分区 ,应

该写成 hd0,1)

系统的第一个硬盘驱动器表示成 (hd0)

,其上的第一个分区表示为 (hd0,0)

,也就

是说对于硬盘 ,采用 (hdx,y)

的形式来表示, x 、y

都是从 0 开始计数的, x 表示硬盘号,

y 表示分区号。

由于主分区只能有四个,所以第一硬盘的四个主分区分别用

(hd0,0)~(hd0,3)

表示;逻辑分区则从 (hd0,4) 开始算,即第一逻辑分区用 (hd0,4) ,第二逻辑分区用 (h

d0,5) 来表示,依次类推。

一般机子的硬盘都是一个主分区,其余是逻辑分区。因此 C 盘用 (hd0,0) , D

用 (hd0,4)

来表示。 光盘用 (cd) 表示,第一软驱用 (fd0)

表示。

文件的表示: ( , ) /path/to/file

[编辑本段 ]

三 .GRUB 的根文件系统

一些用户常困惑于

GRUB

中根文件系统

(root

filesystem)

这一术语的用法。

GRU

B 的根文件系统与 Linux 的根文件系统是没有关系的!

[编辑本段 ]

四 .grub 的接口

当 GRUB 环境开始载入第二步引导装载程序时,它寻找自己的配置文件( menu.

lst )。当找到配置文件后,它使用这个配置文件建立一个要载入的操作系统的菜单列 ----WORD格式--可编辑----

----

表, 然后显示引导菜单接口。 如果配置文件没有被找到,或者如果配置文件不能读取,那么 GRUB 将载入命令行接口。

(一)菜单接口

在菜单接口上,按 [e] 键,对高亮菜单项中的命令进行编辑。按行接口。 添加 ( 加在当前行后面,用 [o] 键;加在当前行前,用

[c] 键载入一个命令

[0]) ,编辑 (用 [e] 键 ),

删除 (用 [d] 键 )。

在所有的改变都完成后,用键来执行这些命令,并引导操作系统。 [Esc]

键来放弃

命令行接口

(二)命令接口

以下是几个常用命令:

boot - 引导先前已经被指定并载入的操作系统或链式装载程序。

chainloader - 将指定的文件作为一个链式装载程序载入。为了获取在一个指定

分区第一

扇区内的文件,使用

+1

作为文件名。

displaymem - 显示当前内存的使用情况,这个信息是基于 BIOS

的。这个命令

有助于确定系统在引导前有多少内存。

initrd

- 使用户能够指定一个在引导时可用的初始

RAM

盘。当内核为了完全引

导而需要某些模块时,这是必需的。

install

p -

安装

GRUB

到系统的主引导记录。这个命令允许系统重启时出现

G

RUB 接口。

(警告: install 命令将覆盖 主引导扇区 中的其他信息。如果命令被执行,那么除

了 GRUB 信息之外的其他用于引导其他操作系统的信息都将丢失。在执行这条命令前,确定你对它有正确的了解。)

kernel - 当使用直接载入方式引导操作系统时, kernel 命令指定内核从 GRUB

的根文件系统中载入 。

比如 kernel /vmlinuz root=/dev/hda5

Vmlinuz

是内核。。它从

GRUB

的根文件系统载入的,如

(hd0,0)

。同时,后面

一个选项被传给内核。它指出当 Linux

内核载入时,内核的根文件系统应该是位于 h

da5 ,第一个 IDE 硬盘的第五个分区。

[编辑本段 ]

五 .Menu.lst 的命令 ----WORD格式--可编辑----

----

color - 设定在菜单中使用的颜色,一种是作为前景色,一种作为背景色。可以

简单地使用颜色名称,如 red/black 。比如:

color red/black green/blue

default - 默认项目的标题名称。如果菜单接口超时,那它将被载入。

fallback - 当这个命令被使用时,如果第一次尝试失败,那么这个项目的标题名

称将被使用。

hiddenmenu - 这个命令被使用时, 它不显示 GRUB 菜单接口, 在超时时间过期

后载入默认项。用户通过按 [Esc] 键,可以看到标准的 GRUB 菜单。

timeout - 这个命令设定了在 GRUB 载入由 default 命令指定的项目前的时间间

隔,以秒为单位。

splashimage - 它指定在 GRUB 引导时所使用的屏幕图像的位置。

title - 设定用来装载一个操作系统的一组特定命令的标题。

字符 # 用来在菜单配置文件放置注释。 张翔 johnvikey

[编辑本段 ]

六。例子

这是个非常基本的用于引导 Red Hat Linux 或 Microsoft Windows 2000 的 GR

UB 菜单配置文件可能如下所示:

default=linux

timeout=10

color=green/black light-gray/blue

# section to load linux

title linux

root (hd0,1) 这里制定了 grub 的根。并且挂载。

kernel /vmlinuz root=/dev/hda5 内核是 grub 根下的 vmlinuz 。

并且内核载入后,内核的根是在 /dev/hda5

boot

# section to load Windows 2000

title windows

rootnoverify (hd0,0) rootnoverify 就是指定根,但是不要挂载。

chainloader +1 使用 (hd0,0) 的第一扇区来引导。

[编辑本段 ]

七 .用 WinGrub 来引导 Linux 安装

1. 安装 wingrub