声明:本系列文章是博主根据 “兄弟连新版Linux视频教程”做的笔记和视频截图,只为学习和教学使用,不适用任何商业用途。
PS:文章基于Linux版本CentOS6.9,如果对Linux感兴趣,建议去看《细说Linux》,沈超老师和李明老师的教学风格我很喜欢:)
15.1 CentOS 6.x(CentOS 6.3)启动管理、启动流程
视频15.1.1 系统运行级别
1.运行级别
运行级别1:单用户模式,只启动最基本的服务,主要用于系统修复;
Linux还有真正的安全模式,从光盘启动;
init 0就是关机命令,但是不同于shutdown命令,他不会保存系统正在运行的服务状态,所以比较不安全;
init 6即重启命令;
如果安装系统时选择的是Basic Server,那么不会包含图形界面,init 5命令也就没有效果;
使用runlevel 命令可看到当前运行级别和 上次系统的运行级别(分别与上次5级别和本次3级别):
视频15.1.2 系统启动过程
启动过程:
1.MBR通过启动引导程序(grub) 进行下一步的启动;
2.相比于Windows系统安装后需要手动安装驱动,Linux在解压缩内核时会自动安装驱动,除非内核中不包含的驱动需要手动安装;
3.内核会搜索initramfs,然后创建一个仿真目录,在目录中搜索驱动进行加载
有意思的是,内核安装的驱动一般放在硬盘中,而如果硬盘是SATA接口的,由于读取硬盘的驱动也在硬盘中,就好比需要钥匙才能开门,但钥匙被锁在门内,怎么办呢?
内核会搜索initramfs,然后创建一个仿真目录,在目录中搜索驱动进行加载;
同时会发现initramfs在boot分区下,而boot分区也在硬盘中,那么是如何读取的呢?其实不是由内核读取,而是有启动引导程序grub在开始时已经加载;
initramfs建立仿真目录过程: