Linux操作系统奥秘02-系统引导(GRUB)
GRUB的加载流程
GRUB是GNU的一款多重引导软件。GRUB包含了3个重要的文件:stage1 ,e2fsstage1_5,stage2。这三个文件分别代表了GRUB运行的3个阶段。
1.stage1
stage1实际存在于MBR的bootloader段中,由BIOS加载执行,stage1会加载stage1.5(例如e2fsstate1_5表示ext2文件系统的stage1.5)。
stage1.5用于让GRUB可以识别对应的文件系统。问题是在stage1没有加载stage1.5前不能识别文件系统,那么stage1如何找到stage1.5的呢?
2.stage1.5
stage1.5实际上存在于MBR之后的32K中,这样stage1在没有文件系统的情况下就可以找到stage1.5了。stage1.5的作用是加载文件系统,并且
找到stage2加载对应的stage2
3.stage2
stage2是GRUB的主程序,实现了GRUB的主要功能:提供选单,读取配置文件(/boot/grub/grub.conf),连接下一个引导扇区(Boot Sector)。
GRUB的设置
grub一般讲设置文件放在/boot/grub下,有些系统还会子啊/etc下建立一个grub.conf的链接文件。
default=
timeout=
splashimage=(hd1,)/boot/grub/splash.xpm.gz
title Windows2K
rootnoverify (hd0,)
chainloader +
title RedHat9
root (hd1,)
kernel /boot/vmlinuz-2.4.- ro root=LABEL=/
initrd /boot/initrd-2.4.-.img
title Mandrake9.
kernel (hd1,)/boot/vmlinuz root=/dev/hdb5 quiet devfs=mount acpi=off vga=
initrd (hd1,)/boot/initrd.img
hiddenmenu:隐藏菜单
default=0 :指定默认系统
password:grub的密码,用于保护grub引导选项不被修改。可以用grub-md5-crypt指令产生
开机选项:
title:操作系统的名称,可以自行指定,显示于启动画面中
root:指定kernel以及initrd所在的硬盘,用hd(x,x)指定,例如(hd0,0)表示第一块硬盘的第一个分区。
kernel:加载kernel的位置
多重引导管理
GRUB指派可以分为2种:直接加载和链接加载
1.直接加载
用于加载原本就支持多重引导的系统:Linux,FreeBSD,UNIX等,可以直接加载其kernel
2.链接加载
用于加载不支持多重引导的系统:windows。安装windows时会强制重写MBR,导致别的系统无法正常加载,所以一般安装系统时
要先安装windows,再安装别的系统。
Linux操作系统奥秘02-系统引导(GRUB)的更多相关文章
- Linux操作系统奥秘01-系统引导(MBR - 硬盘的0磁道)
Boot:1.系统PowerOn 2.BIOS在完成硬件初始化以及POST 3.BIOS加载MBR 4.GRUB->GRUB or kernal MBR MBR即主引导记录,是在BIOS中选择的 ...
- 轻松学习Linux之详解系统引导过程
轻松学习Linux之详解系统引导过程-1 轻松学习Linux之详解系统引导过程-2 本文出自 "李晨光原创技术博客" 博客,谢绝转载!
- 多系统引导 Grub
目录 1. 多系统引导程序 1.1 简介 1.2 Grub History 1.3 支持Windows系统下安装的grub版本 1.4多系统引导程序对比: 1.5 相关参考 1.5.1 Grub 2 ...
- 安装grub到U盘分区,实现多系统引导
目录 1.分区工具及分区类型 1.1 显示分区表和分区信息 1.1.1 fdisk -l 1.1.2 gdisk -l 1.1.3 parted -l 1.2 常见分区类型 1.3 分区样例 1.3. ...
- Linux系统——引导过程与服务控制
一.Linux开机启动原理(十步) (1)开机自检BIOS 开机检测,主板检测 (2)MBR引导 硬盘512字节 (3)GRUB菜单 操作系统菜单 (4)加载内核(kernel) 启动操作系统核心,根 ...
- Linunx系统引导过程及MBR/GRUB故障
Linunx系统引导过程 系统初始化进程 init进程 Systemd Systemd单元类型 允许级别所对应的systemd目标 修复MBR扇区故障 解决思路 操作 修复GRUB引导故障 解决思路 ...
- Linux系统引导过程及排除启动故障
一.Linux操作系统引导过程二.系统初始化进程1.init进程2.Systemd3.Systemd单元类型三.排除启动类故障[1].修复MBR扇区故障(含实验过程)[2].修复GRUB引导故障●方法 ...
- 9.Linux系统引导流程
一.Linux系统引导流程 当我们按下主机电源键的那时候开始,主板上的CMOS/BIOS模块将进行固件自检,以此检查各个硬件是否正确连接. 在Linux引导流程中,一般可以分为以下几个主要过程: 1. ...
- 系统引导器GRUB
系统引导器GRUB 理解/boot/grub/grub.conf 1 # grub.conf generated by anaconda 2 # 3 # Note that you do not ha ...
随机推荐
- windows核心编程---第三章 内核对象及句柄本质
本章讨论的是相对抽象的概念,不涉及任何具体的内核对象的细节而是讨论所有内核对象的共有特性. 首先让我们来了解一下什么是内核对象.内核对象通过API来创建,每个内核对象是一个数据结构,它对应一块内存 ...
- [Java Basics2] Iterable, Socket, Reflection, Proxy, Factory DP
Parent interface of Collection: Iterable Interface A class that implements the Iterable can be used ...
- excel数据出入Oracle数据库(转)
1.先把你的表存为.CSV文件2.打开PL/SQL,新建一张字段和你EXCEL一样的表3.上方Tools——Text Importer——open datafile(左上角)——选择你的CSV表,打开 ...
- M3: 将页面元素制作为图片
本小节将介绍如何将页面元素保存为图片,在前一小节中,我们加入了名称为gridMsg的Grid Control,现在我们将使用RenderTargetBitmap把gridMsg这个页面元素保存为一张图 ...
- 问:Linux下Chrome标题栏中文乱码
From:http://blog.csdn.net/loveaborn/article/details/29579787 在使用Linux的时候你会遇到一些奇奇怪怪的问题,不过,你会在解决这些问题的过 ...
- 网页左上角图标 favicon.ico
显示网页左上角标志图标 <link rel="shortcut icon" type="image/x-icon" href="images/f ...
- cocos2d 艺术标签没有显示
今天自己挖了个坑,设置数字标签的时候,无论怎么搞,程序运行后还是显示的是普通文本数字,各种原因找了一半天,最后发现在资源名字.png的前面多了一个空格,眼瞎一直没看到,最后去掉就OK了
- C语言实现的Web服务器(转-kungstriving)
自己研究了好几天终于写出来一个,哈哈,当然也从网上得到了很多的帮助拉.谢谢大家咯!这个版本还不是很完善,但Web服务器的基本框架已经出来了,还有部分的功能需要进行进一步的测试和修改.虽然说C的开发比较 ...
- Jquery选择器之基本选择器
id选择器 共同点: text:代表标签之间的文本值 返回值:均为列表 根据给定的ID值匹配一个标签元素,如果id值中有元字符(如 !"#$%&'()*+,./:;<=> ...
- php开发api接口
做过 API 的人应该了解,其实开发 API 比开发 WEB 更简洁,但可能逻辑更复杂,因为 API 其实就是数据输出,不用呈现页面,所以也就不存在 MVC(API 只有 M 和 C),那么我们来探讨 ...