- 第一步、加载内核
- 第二步、启动初始化进程
- 第三步、确定运行级别
- 第四步、加载开机启动程序
- 第五步、用户登录
- 第六步、进入login shell
第一步、加载内核
读入 /boot 目录下的内核文件
第二步、启动初始化进程
开始运行第一个程序 /sbin/init,它的作用是初始化系统环境
init是第一个运行的程序,它的进程编号(pid)就是1。其他所有进程都从它衍生,都是它的子进程
第三步、确定运行级别
在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)
init进程的一大任务,就是去运行这些开机启动的程序。
首先读取文件 /etc/inittab,它是运行级别的设置文件
第四步、加载开机启动程序
目录 /etc/init.d ,真正的启动脚本都统一放在这个目录中。init进程逐一加载开机启动程序,其实就是运行这个目录里的启动脚本。
第五步、用户登录
开机启动程序加载完毕以后,就要让用户登录了。
(1)命令行登录:读入 /etc/profile、~/.bash_profile、~/.bash_login、~/.profile
(2)ssh登录: 读入 /etc/profile、~/.bash_profile、~/.bash_login、~/.profile
(3)图形界面登录:只加载 /etc/profile 和 ~/.profile
第六步、进入login shell.
用户登录时打开的shell,就叫做login shell。