对于linux系统的初学者来说,理解并掌握linux系统启动流程能够使你够深入的理解linux系统,还可以通过系统的启动过程来分析问题解决问题。
Linux开机启动的流程如下图
- power on 开机
- post自检(检查一部分大的硬件)
- BIOS(basic input output system 主板上的一个小的芯片程序)对硬件进行检测
- 从boot找到启动顺序检查,第一启动顺序
- 硬盘
- 硬盘的第一个扇区MBR
- grub2主引导程序
- /boot里的文件系统里的驱动
- 内核文件vmlinuz initramfs-
- systemd程序(用户的守护进程,孤儿进程的收养者,进程号为1)
- 启动对应的运行级别里的服务
- mutil-user
- /etc/rc.local /etc/fstab 至此系统启动完了
- login 登录
- 根据/etc/passwd和/etc/shadow检测用户名密码是否正确
- 运行用户家目录下的环境变量初始文件 ~/.bashrc ~/.bash_profile /etc/bashrc /etc/profile -
- 得到bash提示符