感谢支持
我们一直在努力

RHCE课堂笔记:开机

Boot
Linux在开机的流程,主要如下图。


RHCE课堂笔记:开机

开机之后主要是先由BIOS进入主记忆体,进行硬体以及基本功能的诊断和初始化。
BIOS执行完系统的检测之后,会将权限交给MBR(Master Boot Record)。
MBR会选择Boot Loader,Boot Loader会载入kernel。
kernel会唿叫init,init就会载入设定的runlevel启动相对应的服务,让使用者可以登入系统。

MBR
MBR是开机很重要的一环,MBR存在于硬碟的第一磁轨的第一磁区,是电脑开机第一个读取的磁区。


RHCE课堂笔记:开机

MBR共512bytes,主要纪录硬碟相关的资讯,以及各分割区的资讯。
MBR主要分为三个部分。
Boot Partition Loader主要用以检查Partition Table是否正确,并将权限转交给Boot Loader。
Partition Table主要纪录分割区相关的资讯,每个分割区可用16bytes,最多四个分割区
Signature主要为验证MBR是否有效。

MBR会决定是由哪个Boot Loader来进行开机,并进行权限转移。


RHCE课堂笔记:开机

MBR中的Boot Loader会经由使用者选择或预设的方式将权限转交给其他Boot Loader。
当其他Boot Loader得到权限之后就会去载入各自的Kernel。
这边要特别注意的是,Windows的Boot Loader不认得其他OS的Boot Loader。
所以如果要安装双系统,要先安装Windows,再安装Linux,让Linux的Boot Loader覆写到MBR。

Init & Runlevel
Kernel唿叫的第一只程式就是init,init被唿叫之后会载入配置,也就是inittab。
inittab最重要的部分就是runlevel的设定,不同的runlevel可以决定使用者有多少服务可以使用。
开机预设的runlevel可在/etc/inittab中更改设定。
Linux中总共有7个runlevel,分别如下:
   0 = 关机
   1 = 单人模式,不用帐号密码,管理员权限,文字介面,用以维护系统。
   2 = 多人模式,使用者需输入帐号密码登入,文字介面,无网路功能。
   3 = 多人模式,使用者需输入帐号密码登入,文字介面,有网路功能。
   4 = 系统保留功能。
   5 = (预设)多人模式,使用者需输入帐号密码登入,视窗化介面,有网路功能。
   6 = 重新开机。
之后会依照runlevel载入服务,接着就可以让使用者登入系统,并进行各种shell。

使用 #runlevel 可以查询目前的runlevel,以及利用 #init [runlevel number] 切换runlevel。
若系统设定为1~3,可利用 #startx 启动图形介面,当使用者登出图形介面则会回到文字介面。

Grub
Linux的Boot Manager为Grub,主要设定档位于/boot/grub/grub.conf,此档案可设定开机选单。
   default:设定为预设开机设定。
   timeout:开机选项逾时时间。
   splashimage=:选单背景图位置。
   hiddenmenu:隐藏选单。
   title = :开机设定选项标题。
   root(hd0,0) :开机磁区,第一个数字为硬碟编号,第二个数字为磁区编号。
   root=/dev/… : root所在的位置。
   kernel :kernel所在位置。

赞(0) 打赏
转载请注明出处:服务器评测 » RHCE课堂笔记:开机
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏