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. mysql事务的开启

    mysql事务的开启 对于一个MYSQL数据库(InnoDB),事务的开启与提交模式无非下面这两种情况: 1>若参数autocommit=0,事务则在用户本次对数据进行操作时自动开启,在用户执行 ...

  2. USACO 2.1 Hamming Codes

    Hamming CodesRob Kolstad Given N, B, and D: Find a set of N codewords (1 <= N <= 64), each of ...

  3. 对ajax和jsp渲染的一些感想

    一个多月来,也算是做了两个javaweb的项目,但是对于用哪种方式渲染页面一直有些抉择不定,第一个项目用的ajax,发现各种对htmlDom节点的操作十分的繁琐,需要找到数据填充的节点并添加id值,引 ...

  4. 一种比较高级的方法也可以修改windows为默认启动系统

    运行: sudo mv /etc/grub.d/30_os-prober /etc/grub.d/06_os-probersudo update-grub

  5. Centos7 minimal 系列之Redis集群搭建(六)

    一.redis安装 借鉴上篇博客:http://www.cnblogs.com/WJ--NET/p/8176071.html 二.集群搭建 2.1.创建文件夹 mkdir redis_cluster ...

  6. Uva 11324 The Largest Clique【强连通 DAG动规 spfa】

    白书上的例题 做一遍tarjan后,缩点,每一个scc节点的权为它的结点数,做一次DAG上的动规,求出路径上的最大点权和,就可以了 #include<cstdio> #include< ...

  7. iOS性能优化未阅文章归档

    https://www.aliyun.com/jiaocheng/349583.html https://www.2cto.com/kf/201706/648929.html 理解UIView的绘制 ...

  8. Python-ORM实战

    Date: 2019-06-03 Author: Sun 什么是ORM? ​ ORM(object relational mapping), 就是对象关系映射,简单来说我们类似python这种面向对象 ...

  9. hdu2614 Beat

    题意: 有n个问题. 给出你解决完第i个问题之后解决j问题所花的时间,花的时间越多表示难度越大,每次只能解决难度大于或等于上个题难度的问题.问你最多能解决多少问题. 他妈的,第一次做想半天想不出来如何 ...

  10. day 06 数据类型的内置方法[数字类型,字符串类型]

    什么是可变还是不可变? 可变是值可以改变,但是ID不变,不可变是值变,ID也变. 1.数字类型 int 1.用途:年龄,号码,等级 2.定义:可以使用int()方法将纯数字的字符串转为十进制的整数 a ...