centos系统启动流程详解

centos系统启动流程详解

  • CentOS启动流程:

    • POST

      • 加电自检 主板上有一个ROM芯片,有只读程序,CPU被设计为一旦通电就会自动去找ROM芯片上的程序并运行,即检查各种硬件设备是否存在。
    • BootSequence

      • 引导过程 加电自检后按BIOS中设定的次序查找各引导设备,第一个有引导程序的设备即是本次启动用到的设备
    • MBR(BootLoader)

      • 引导加载器GRUB 如果第一个有引导程序的设备为硬盘,则硬盘上的0磁道的第一个扇区即为MBR(主引导记录 512bytes),存放了引导加载程序(446bytes)、分区表(bytes)、标识MBR是否有效的内容(2bytes)。

        • 系统找到MBR后,将引导加载程序GRUB装载到内存中(stage1)
        • stage1.5在mbr之后的扇区,让stage1中的bootloader能识别stage2所在的分区上的文件系统
        • 在stage2,提供丰富功能(菜单、交互式接口、认证保护机制)来加载内核和initramfs
    • Kernel(initramfs)

      • 内核加载至内存后解压运行,探测可识别到的所有硬件设备
      • 借助initramfs加载硬件对应的驱动程序
      • 以只读方式挂载根文件系统,进而运行用户空间的第一个应用程序/sbin/init
    • /sbin/init

      • 设定默认运行级别
      • 运行系统初始化脚本来完成系统初始化
      • 基于运行级别开启或关闭对应的服务
      • 设置登录终端

原创文章,作者:N27_xiaoni,如若转载,请注明出处:http://www.178linux.com/85832

(2)
N27_xiaoniN27_xiaoni
上一篇 2017-09-04 10:30
下一篇 2017-09-04 11:14

相关推荐

  • 用户创建及权限管理

    1.列出当前系统上所有已经登录的用户的用户名,注:同一个用户登录多次,则只显示一次即可。 who | cut -d ‘ ‘ -f1 | sort -u [root@localhost ~]# who danry :0 2017-07-16 23:20 (:0) danry pts/0 2017-07-16 23:23 (192.168…

    Linux干货 2017-07-17
  • lnmap实战之负载均衡架构(无高可用)

    lnmap实战之负载均衡架构(无高可用) 架构图如下: 此次实战软件,全部yum安装 1.准备好机器,同步好时间 192.168.42.150 node1 [负载均衡器]192.168.42.152 node3 [web2]192.168.42.153 node4 [web1]192.168.42.151 node2 [memcached session存储…

    Linux干货 2017-06-22
  • mysql主从架构/模式

    MySQL Replication: Master/Slave Master: write/read Slaves: read 为什么? 冗余:promte(提升为主),异地灾备 人工 工具程序 负载均衡:转移一部分“读”请求; 支援安全的备份操作: … 主/从架构: 异步复制:master只需要完成自己的数据库操作即可。至于slaves是否收到…

    2016-11-27
  • 第一天课程内容

    一 连接VNC 主机名:172.20.0.100 二 课堂资源下载 ftp://172.16.0.1 三 博客作业     优秀示例 www.yulongjun.com     博客地址 www.178linux.com     作业要求 1.每周一篇或更多,整理当周内容。 2.老师周五发链接地址,提交博客链接。 四 职业发展线路 运维 > Pytho…

    Linux干货 2018-03-26
  • rsyslog日志系统

    一、前言  什么是日志?    日志就是历史事件,按时间序列将发生的事件予以记录;日志记录信息记录的是事件的发生时间以及事件内容  Linux下记录日志的系统:    syslog:是CentOS 5.0系统上使用的日志系统,有两类日志,分别是syslogd、klogd;    …

    Linux干货 2015-06-15
  • 马哥linux0811作业内容

    总结位置变量$1,$2.. $10,$11…MAX 位置变量的含义分别就是代表第几个参数,$1就是脚本运行的第一个参数.$2就是第二个.以此类推.直到最后. $*,$@,$# 区别 特殊变量: $0 : 表示命令本身 $#:传递给命令的参数个数 $*:传递给脚本的所有参数(所有参数是一个整体的字符串) $@:传递给脚本的所有参数(各个参数都是独立…

    Linux干货 2016-08-19

评论列表(1条)

  • 马哥教育
    马哥教育 2017-10-10 13:00

    系统启动流程是面试过程中考官比较喜欢考的一道 题,搞清楚这个过程不仅对面试有很大帮助,但系统排错和管理中也有非常大的帮助 。