启动流程 - 运行级别
Linux系统默认定义7种计算机运行级别:
运行级别 | 含义 |
0 | 关机 |
1 | 单用户模式,可以想象为Windows的安全模式,主要用于系统修复。只启动最基本的程序,程序还是从硬盘启动 (不是真正的Linux中安全模式,在Linux中还有真正的光盘启动安全模式) |
2 | 不完全的命令行模式,不含NFS服务(Linux系统之间进行文件共享的服务) |
3 | 完全的命令行模式,就是标准字符界面 |
4 | 系统保留 |
5 | 图形模式 |
6 | 重启动 |
运行级别命令
runlevel
# 查看系统运行级别(前面的数字是系统启动时的级别,后面的数字是当前级别)
init 运行级别
# 改变系统运行级别
系统默认运行级别
CentOS 6.x
# vim /etc/inittab
id 5 initdefault
修改level值即可
CentOS7
/etc/inittab文件就不再使用了:
# inittab is no longer used when using systemd.
启动流程 - 启动过程
BIOS:主板中内置的操作系统,进行计算机的基本信息设置,比如主板信息,系统时间等;
1、开机后,主板上BIOS自检,加载MBR中主引导程序(Linux中的启动引导程序为Grub)
2、如果计算机中只有一个Linux系统,直接加载Linux内核,然后进行下一步启动;
如果计算机中有多系统,调用其他分区启动扇区中的启动引导程序,加载选择启动的操作系统内核;
3、内核解压并自检,通过仿真根目录加载启动过程中所需要的内核模块(比如SATA硬盘的驱动),然后挂载真正的系统根目录;(实际Linux下的硬件驱动放在/lib目录)
4、加载/sbin/init(系统启动的第一个进程)
5、调用/etc/init/rcS.conf进行系统初始化(基本功能启动)以及根据系统运行级别启动对应的附加程序