linux系统启动流程

一:POST 加电自检

二:BIOS--->Boot Sequence

        按照bios中设置的硬件启动循序查找引导设备,          

        第一个有引导程序的设备即为本次启动用到的设备。

三:MBR--->Bootloader

            MBR组成:    

                446:bootloader------centos的GRUB

                64 : 分区表信息

                2  : 是否启用

四:Kernel 加载到内存

        初始化(自解压):

                探测可识别的所有硬件设备;

                加载硬件驱动程序(可能借助ramdisk加载);

                已制度方式挂载根文件系统;

                运行用户空间第一个应用程序:/sbin/init

                        init程序类型:

                                sysv:init,Centos5

                                        配置文件:/etc/inittab

                                Upstart:init,Centos6

                                        配置文件:/etc/inittab, /etc/init/*.conf

                                Systemd:systemd,Centos 7

                                        配置文件:/usr/lib/systemd/system,

                                                        /etc/systemd/system

                        /sbin/init程序:

                                运行级别:为系统运行或者维护等应用目的设定

                                    0,6,:关机,重启

                                    1,2,:维护模式(单用户模式,多用户模式)

                                    3,5,:默认级别(3文本界面,5是图形化界面)

                        切换级别: init NUM

                        查看级别: runlevel

                                         who -r

                        配置文件: /etc/inittab

                        chkconfig命令--查看服务所有级别的启动或者关闭设定情景。

                            chkconfig  [--list]  [name]

                             添加:chkconfig --add  name

                             删除:chkconfig  --del  name

                             修改指定的链接类型:

                                chkconfig [--level levels] name <on|off|reset>      

五:/etc/rc.d/rc.sysinit: 系统初始化脚本:

     (1) 设置主机名;

     (2) 设置欢迎信息;

     (3) 激活udev和selinux;

     (4) 挂载/etc/fstab文件中定义的文件系统;

     (5) 检测根文件系统,并以读写方式重新挂载根文件系统;

     (6) 设置系统时钟;

     (7) 激活swap设备;

     (8) 根据/etc/sysctl.conf文件设置内核参数;

     (9) 激活lvm及software raid设备;

     (10) 加载额外设备的驱动程序;

     (11) 清理操作;                  


总结:

POST加电自检 --> BIOS(Boot Sequence) --> MBR(bootloader) --> Kernel /sbin/init ---> (/etc/inittab, /etc/init/*.conf) --> 设置默认运行级别 ---> 运行系统初始化脚本 -->关闭或者启动对应服务----> 设置登录终端


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章