GRUB(统一引导装入器)是基本的Linux引导装入器。

其有四个作用,如下:

1.选择操作系统(如果计算机上安装了多个操作系统)。

2.表示相应引导文件所在的分区。

3.找到内核。

4.运行初始内存盘,设置内核与相关模块。

GRUB的配置文件是/boot/grub/grub.conf

/boot/grub/grub.conf中典型的GRUB配置文件,如下图

[root@localhost ~]# cat /boot/grub/grub.conf

# grub.conf generated by anaconda

#

# Note that you do not have to rerun grub after making changes to this file

# NOTICE: You do not have a /boot partition. This means that

# all kernel and initrd paths are relative to /, eg.

# root (hd0,9)

# kernel /boot/vmlinuz-version ro root=/dev/hda10

# initrd /boot/initrd-version.img

#boot=/dev/hda

default=1

timeout=30

splashimage=(hd0,9)/boot/grub/splash.xpm.gz

hiddenmenu

title Fedora Core (2.6.9-1.667)

root (hd0,9)

kernel /boot/vmlinuz-2.6.9-1.667 ro root=LABEL=/ rhgb quiet

initrd /boot/initrd-2.6.9-1.667.img

title Other

rootnoverify (hd0,0)

chainloader +1

对上图中GRUB的变量进行说明如下

变量 说明

#: 对菜单配置文件进行注释。

default: 指定默认操作系统。如果为0,则没有用户输入时,自动启动第一段中显示的操作系统。

timeout: 设置GRUB启动默认之前的时间极限(秒数)。在上图中为30秒。

splashimage: 指定默认GRUB引导时所使用的背景图像的位置。

hiddenmenu: 这个命令被使用时,它不显示GRUB菜单接口,在超时时间过期后载入默认项。用户通过按[Esc]键,可以看到标准的GRUB菜单。可以在其前加#或者删除来达到显示菜单借口的目的。

title: 设置GRUB菜单中显示的选项。一个是显示Fedora Core (2.6.9-1.667),一个 为Other,也即我使用的Windows XP。

kernel: 指定Linux内核地址。

initrd: 指定初始内存盘地址。

rootnoverify: 对Windows XP之类的敏感操作系统指定引导文件所在分区。

chainloader: +1表示对指定分区中第一个扇区寻找引导文件。

说明1:password变量未被列出,是因为我在安装系统时,未选择引导装载口令。这个变量被使用时,它可以防止不知道口令的用户编辑菜单的项目。

在GRUB中增加口令的办法:使用grub-md5-crypt命令,在提示下输入所要口令。可以看到一系列奇怪的字符,可以将其复制到配置文件中。很容易从命令行复制这个口令,只要用鼠标加亮选择口令,在文本编辑器中打开/etc/grub.conf,在所要位置右单击鼠标,然后Linux即会自动插入加亮的MD5口令。

说明2:为了方便起见,/etc/grub.conf链接实际引导装入器的配置文件/boot/grub/grub.conf。

还有一些其它的GRUB变量未被列出,如果要查询更详细的信息,可以参考如下:

可以在系统里使用man grub或者info grub命令。

以下是一些关于grub的站点

http://www.gnu.org/software/grub

- GNU GRUB 项目的主页。这个站点包含了GRUB发展状态的信息以及一个FAQ。

http://www.uruk.org/orig-grub

- 在这个项目被脱管到自由软件基金会进一步发展前的最初的GRUB文档。

http://www.redhat.com/mirrors/LDP/HOWTO/mini/Multiboot-with-GRUB.html

- 研究GRUB各种不同的用法,包括引导非Linux操作系统。

http://www.linuxgazette.com/issue64/kohli.html

- 一篇介绍性的文章,讨论在一个系统上GRUB配置,包括GRUB命令行选项的概述。

Linux下grub的配置文件的更多相关文章

  1. linux下修改Apache配置文件

    linux下修改host文件host文件存放路径 /etc/hosts 可以用vim编辑 //Apache配置虚拟主机 /usr/local/apache/conf/extra/httpd-vhost ...

  2. Linux下MySql的配置文件my.cnf详细 讲解

    经常在使用MySql,但是对于MySql下面的各种参数的配置并不是很熟悉,经常在需要改变某项参数的时候,还要到处在网上查找,有点不方便.今天想把MySql下面的配置文件my.cnf详细的做一个说明(L ...

  3. Linux下grub.cnf详解

    grub.conf跟系统启动项有关,对于重置密码.来说小case... 1.介绍    在Red Hat Linux7.2之后,默认的引导加载程序从LTLO变为GRUB.这个引导加载程序使用户能够选择 ...

  4. Linux下常用的配置文件位置

    1.别名配置文件 [root@room8pc205 ~]# vim /root/.bashrc     #此处是root用户定义的别名文件的位置,只有root用户登录可用 [root@room8pc2 ...

  5. linux下的apache配置文件详解

    .Apache的配置由httpd.conf文件配置,因此下面的配置指令都是在httpd.conf文件中修改. 站点的配置(基本配置) (1) 基本配置: ServerRoot "/mnt/s ...

  6. Linux下改动Matlab配置文件支持C++ 11标准以生成mex

    进入matlab 输入mex -v命令查看当前配置 输入命令改动配置文件 命令: !sudo gedit /usr/local/MATLAB/R2013a/bin/mexopts.sh 加入下面蓝色内 ...

  7. Linux下查找Nginx配置文件位置

    1.查看Nginx进程 命令: ps -aux | grep nginx 圈出的就是Nginx的二进制文件 2.测试Nginx配置文件 /usr/sbin/nginx -t 可以看到nginx配置文件 ...

  8. 让 MySQL 在 Linux 下表名不区分大小写(实为表名全小写)

    把 Windows 下的应用部署到 Linux 下,使用到了 Quartz 集群的特性,所以建了 MySql 的中间表,一启动看到报错: Invocation of init method faile ...

  9. linux 下配置文件目录/etc/sysconfig

    /etc/sysconfig/目录详解 2010-06-19 11:12 6693人阅读 评论(1) 收藏 举报 桌面环境debugging防火墙serviceunix语言 /etc/sysconfi ...

随机推荐

  1. nginx的安装步骤

    nginx学习资料;https://zhuanlan.zhihu.com/p/34943332 1.下载nginx的安装包:https://nginx.org/en/download.html 2. ...

  2. 利用hexo+github创建个人博客

    因为想拥有一个独属于自己的个人博客啊. 安装部署hexo 进入一个安全的目录,cd ~/Desktop 在 GitHub 上新建一个空 repo,repo 名称是「你的GitHub用户名.github ...

  3. Android WebView回退

    在使用webView时,会出现点击按钮让网页页面回到上一个页面的需求,这时可以使用goBack方法. 但是有的安卓用户会习惯点击手机自带的返回按钮,这时会直接关闭当前的activity,而不是网页页面 ...

  4. Android截图<包括Alertdiaog>

    1.使用的系统内部的截屏方法…… 2. public class MainActivity extends AppCompatActivity { private static final Strin ...

  5. quartz定时任务框架调度机制解析

    转自集群调度机制调研及源码分析 quartz2.2.1集群调度机制调研及源码分析引言quartz集群架构调度器实例化调度过程触发器的获取触发trigger:Job执行过程:总结:附: 引言 qurat ...

  6. LeetCode(15)3Sum

    题目如下: Python代码: def threeSum(self, nums): res = [] nums.sort() for i in xrange(len(nums)-2): if i &g ...

  7. JS中通过LayUI的layer.prompt弹出文本输入层,多个按钮回调获取输入值

    JS中通过LayUI弹出文本输入层,多个按钮回调: 如图所示,输入文本后点击通过/不通过按钮回调获取输入文本值的实现: 实现JS: layer.prompt({ formType: 2, // 弹出文 ...

  8. jquery.nicescroll.min.js滚动条插件的用法

    1.jquery.nicescroll.min.js源码 /* jquery.nicescroll 3.6.8 InuYaksa*2015 MIT http://nicescroll.areaaper ...

  9. css font-family 字体组

    介绍图片来自: http://www.runoob.com/cssref/css-websafe-fonts.html

  10. 阿里云Linux系统Nginx配置多个域名的方法

    Nginx绑定多个域名,可通过把多个域名规则写一个配置文件里实现,也可通过分别建立多个域名配置文件实现,为了管理方便,建议每个域名建一个文件,有些同类域名则可写在一个总的配置文件里. 1. 比如我想建 ...