操作系统接管硬件以后,首先读入 /boot 目录下的内核文件
1.加载内核 /boot
2.启动初始化进程。内核文件加载以后,就开始运行第一个程序 /sbin/init,它的作用是初始化系统环境。
3.确定运行级别
许多程序需要开机启动。它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。
init进程的一大任务,就是去运行这些开机启动的程序。但是,不同的场合需要启动不同的程序,比如用作服务器时,需要启动Apache,用作桌面就不需要。Linux允许为不同的场合,分配不同的 开机启动程序,这就叫做"运行级别"(runlevel)。也就是说,启动时根据"运行级别",确定要运行哪些程序。
Linux预置七种运行级别(0-6)。一般来说,0是关机,1是单用户模式(也就是维护模式),6是重启。运行级别2-5,各个发行版不太一样,对于Debian来说,都是同样的多用户模式(也就是正 常模式)。
init进程首先读取文件 /etc/inittab,它是运行级别的设置文件。
4.加载开机启动程序
5.用户登录
6.login shell
命令行登录:首先读入 /etc/profile,这是对所有用户都有效的配置;然后依次寻找下面三个文件,这是针对当前用户的配置。
~/.bash_profile
~/.bash_login
~/.profile