grub配置指南
GRUB(统一引导装入器)是基本的Linux引导装入器。
其有四个作用,如下:
1.选择操作系统(如果计算机上安装了多个操作系统)。
2.表示相应引导文件所在的分区。
3.找到内核。
4.运行初始内存盘,设置内核和相关模块。
GRUB的设置文件是
Fedora的是在/boot/grub/grub.conf
ubuntu中是在 /boot/grub/menu.lst
/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,也即我使用的视窗系统 XP。
kernel: 指定Linux内核地址。
initrd: 指定初始内存盘地址。
rootnoverify: 对视窗系统 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命令行选项的概述。
补充 ubuntu中的
==============================================================================
default 0
timeout 3
hiddenmenu
title Ubuntu 9.04, kernel 2.6.28-11-generic
uuid bb77114e-07a7-44a4-9345-4cc9f6e25296
kernel /vmlinuz-2.6.28-11-generic root=UUID=5e0cc8d2-2b7f-41a5-aa58-acc670569b5f ro quiet splash
initrd /initrd.img-2.6.28-11-generic
quiet
title Ubuntu 9.04, kernel 2.6.28-11-generic (recovery mode)
uuid bb77114e-07a7-44a4-9345-4cc9f6e25296
kernel /vmlinuz-2.6.28-11-generic root=UUID=5e0cc8d2-2b7f-41a5-aa58-acc670569b5f ro single
initrd /initrd.img-2.6.28-11-generic
title Windows 95/98/NT/2000
root (hd0,0)
makeactive
chainloader +1
title Ubuntu 9.04, memtest86+
uuid bb77114e-07a7-44a4-9345-4cc9f6e25296
kernel /memtest86+.bin
quiet
==============================================================================
上面的选项的作用:
(1)default 0:此选项是在默认的情况下,GRUB启动哪个操作系统,如果装了多个操作系统,GRUB能够指定默认是启动那个操作系统。如果是0,则默认启动第一个(最上面的)的操作系统;如果是1,则默认第二个,以此类推。
(2)timeout 3:超时时间,单位是秒,在此时间内如果用户没有进行任何操作,那么将启动default指定的操作系统,如果是正数,则此等待时间规定为秒数,如果是 0,则立刻进入指定操作系统,如果是负数,则进入GRUB的程序界面,一直等待用户选择进入指定的操作系统。
(3)hiddenmenu:表示隐藏GRUB的程序界面,在Ubuntu系统中,默认情况下GRUB的程序界面是隐藏的,如果想显示,则需要按提示按下Esc键。
(4)title Ubuntu 9.04, kernel 2.6.28-11-generic:表示出现在GRUB程序界面中的字符串,这里可以是任何字符串,原则上都使用引导的操作系统的名称。
(5)root(hd0,1):这个是GRUB中分区的表示方法,GRUB程序中分区的表示方法与Ubuntu系统中的表示分区方法不同,在Ubuntu 中表示分区的方法如同hda1:其中h表示IDE硬盘,d表示设备,a表示第一个IDE设备中的主盘,1表示此硬盘的第一个主分区(具体分配信息请查阅其 他有关资料)。而在grub中是使用(hd0,1)的方式表示的,其中h表示IDE硬盘,d表示设备,0表示第一块IDE设备中的主盘,1表示此硬盘上的 第二个分区。因此在GRUB程序v中,硬盘的分区是从0开始的,而硬盘数也是从0开始的,如Ubuntu系统的hdb5在GRUB程序中就表示为 (hd1,4)。注意,前面的root表示的是操作系统的启动分区,而不是root目录。
(6)kernel:kernel及其后面的部分指定的是具体的内核文件,并且根据分区的挂载点和特性,后面指定了内核文件所在位置以及内核文件名,并且指明了跟目录所在的分区,并且将其以只读(ro)方式挂载。
(7)initrd:这部分是虚拟磁盘的文件名。
(8)chainloader+1:存在Windows操作系统的时候就会有这一项,这是Ubuntu采用的链式启动引导器,即表示启动分区有GRUB的启动分区直接下移到下一个位置(windows的引导位置)。
通过对GRUB的配置文件menu.lst的配置,可以很容易对启动的操作系统进行控制(在此文件中有大量#表示的详细说明)。
grub配置指南的更多相关文章
- Visual Studio Code 配置指南
Visual Studio Code (简称 VS Code)是由微软研发的一款免费.开源的跨平台文本(代码)编辑器.在我看来它是「一款完美的编辑器」. 本文是有关 VS Code 的特性介绍与配置指 ...
- [转载]SharePoint 2013测试环境安装配置指南
软件版本 Windows Server 2012 标准版 SQL Server 2012 标准版 SharePoint Server 2013 企业版 Office Web Apps 2013 备注: ...
- P6 EPPM 安装与配置指南 16 R1 2016.4
关于安装和 配置P6 EPPM 本指南告诉你如何自动 安装和配置您的应用程序. 在您开始之前,阅读 先决条件 P6 EPPM配置 (7页). 安装P6 EPPM 您将使用 安装程序 (窗口) . ...
- P6 EPPM 16.1 安装和配置指南 1
安装和配置指南下一topiccontents这些指南解释如何安装和配置数据库服务器,和P6 EPPM,模块:他们还提供在P6 EPPM能够解决所有模块的概述.标准指南帮助您配置和部署应用程序向导P6 ...
- P6 EPPM R16.1安装与配置指南(三)
P6 EPPM R16.1安装与配置指南(三) 解压:V137390-01.zip 修改 D:\P6_R161\p6suite\database\dbsetup.bat 的行 SET JAR_FI ...
- P6 EPPM R16.1安装与配置指南(二)
P6 EPPM R16.1安装与配置指南(一) http://www.cnblogs.com/endv/p/5634620.html P6 EPPM R16.1安装与配置指南(二) 环境变量配置 新建 ...
- P6 EPPM R16.1安装与配置指南(一)
标题 http://www.cnblogs.com/endv/p/5634620.html 安装与配置指南安装与配置指南(数据库)说明哪些How to set up the P6专业数据库和服务器.a ...
- SQL Server 2012 AlwaysOn集群配置指南
1. AlwaysOn介绍 AlwaysOn是SQL Server 2012提供的全新综合.灵活.高效经济的高可用性和灾难恢复解决方案.它整合了镜像和群集的功能,基于OS 故障转移群集(Windows ...
- JBoss7配置指南
JBoss7配置指南 1. jboss各主要版本特性... 3 1.1. jboss4特性... 3 1.2. jboss5特性... 5 1.3. jboss6特性 ...
随机推荐
- 理解CPU steal time
http://melody-dc.com/2015/11/21/%E7%90%86%E8%A7%A3CPU-steal-time/ http://www.cnblogs.com/yjf512/p/33 ...
- mint 设置无线 AP
所需软件: sudo apt-get install hostapd 1. 创建 hostapd 的 configure 文件 新建 hostapd.conf 文件,存放位置任意,与后面修改的路径一致 ...
- 使用dd命令制作U盘启动盘wodim刻录光盘cd dvd
首先格式化U盘:使用fdisk -l 查看U盘到挂载点,如我的为/dev/sdb1.卸载U盘,执行格式化命令:mkfs.vfat /dev/sdb1 然后重新挂载U盘,开始制作启动盘: 1.# dd ...
- OpenERP7测试手记之 - EMail配置 转
转自http://blog.sina.com.cn/s/blog_6d5929a00101b74y.html 在OpenERP中进行Email配置要注意以下几点: 1.如下面两个图,公司的“电子邮件” ...
- oracle 快速复制表结构、表数据
1.情景展示 根据现有的表,建一个新的表,要求:新表的结构与原有表的表结构一模一样,如何快速实现? 根据现有的表,建一个新的表,要求:新表的结构.数据与原表一模一样,如何实现快速复制旧表? 2.解 ...
- http://blog.csdn.net/u011277123/article/details/53665302
导读:Oracle中,除Exp命令可进行一般的全库.全用户导出外,还可通过增加相关参数条件实现对部分库表或数据的导出. 测试环境 在如下图的测试环境中,当前登录用户名为“jck”,该用户下有200多张 ...
- ppt整体配色方案
背景色建议以灰色或者被色为主. 在百度云盘也有大量的ppt模板,还是非常不错的.http://pan.baidu.com/s/1bpDf7Fh
- 常用bios flash闪存型号
常用flash IC芯片厂商及型号 制造商 4M 8M 16M 32M Atmel AT25DF321AT25DF321A AT25DF641 EON (cFeon) EN25F32EN25P ...
- asp.net 如何配置authentication,完成基于表单的身份验证
步骤一: 在根目录下的web.config中加入: <system.web> <authentication mode="Forms"> ...
- shell脚本npm构建静态文件
#!/bin/bash cd /data/web source /etc/profile /usr/bin/cnpm i && npm run build cp -r ./dist/* ...