zoukankan      html  css  js  c++  java
  • CentOS 6.X启动流程

    CentOS 6.X启动流程

     

    /boot分区


    启动引导程序是默认可以识别boot分区的.因此在系统还无法加载硬盘的时候,boot分区是可以识别的!

     

    initramfs内存文件系统 

    CentOS 6.x中使用initramfs内存文件系统取代了CentOS 5.x中的initrd RAM Disk。他们的作用类似,可以通过启动引导程序加载到内存中,然后加载启动过程中所需要的内核模块[用来模拟真正的Linux文件系统结构,详细信息如下],比如USB、SATA、SCSI硬盘的驱动和LVM、RAID文件系统的驱动.

     

    测试initramfs文件系统

    mkdir /tmp/initramfs 

    #建立测试目录 

     

    cp /boot/initramfs-2.6.32-279.el6.i686.img /tmp/initramfs/ 

    #复制initramfs文件 

     

    cd /tmp/initramfs/ 

    file initramfs-2.6.32-279.el6.i686.img


    #可以看出是一个gzip压缩文件


    mv initramfs-2.6.32-279.el6.i686.img initramfs-2.6.32-279.el6.i686.img.gz

    #修改文件的后缀名为.gz 

     

    gunzip initramfs-2.6.32-279.el6.i686.img.gz 

    #解压缩

     

    file initramfs-2.6.32-279.el6.i686.img 

     

    cpio -ivcdu < initramfs-2.6.32-279.el6.i686.img 

    #再继续解压缩

    ls


    #可以看出,他与Linux真正的文件系统非常相似!

     

    执行/sbin/init进程

    调用/etc/init/rcS.conf配置文件 

    主要功能是两个: 

    先调用/etc/rc.d/rc.sysinit,然后由/etc/rc.d/rc.sysinit配置文件进行Linux系统初始化。 

    然后再调用/etc/inittab,然后由/etc/inittab配置文件确定系统的默认运行级别

    [虽然CentOS 5.X中的/etc/inittab文件中的书写顺序与上面不同,但是真正的执行顺序是相同的!]

     

    由/etc/rc.d/rc.sysinit初始化 

    1、获得网络环境 

    2、挂载设备 

    3、开机启动画面Plymouth(取替了过往的 RHGB) 

    4、判断是否启用SELinux 

    5、显示于开机过程中的欢迎画面 

    6、初始化硬件 

    7、用户自定义模块的加载 

    8、配置内核的参数 

    9、设置主机名 

    10、同步存储器 

    11、设备映射器及相关的初始化 

    12、初始化软件磁盘阵列(RAID) 

    13、初始化 LVM 的文件系统功能 

    14、检验磁盘文件系统(fsck) 

    15、设置磁盘配额(quota) 

    16、重新以可读写模式挂载系统磁盘 

    17、更新quota(非必要) 

    18、启动系统虚拟随机数生成器 

    19、配置机器(非必要) 

    20、清除开机过程当中的临时文件 

    21、创建ICE目录 

    22、启动交换分区(swap) 

    23、将开机信息写入/var/log/dmesg文件中

     

    调用/etc/rc.d/rc文件 

    运行级别参数传入/etc/rc.d/rc这个脚本之后,由这个脚本文件按照不同的运行级别启动/etc/rc[0-6].d/目录中的相应的程序

     

    /etc/rc3.d/k??开头的文件(??是数字),会按照数字顺序依次关闭 

    /etc/rc3.d/S??开头的文件(??是数字),会按照数字顺序依次启动

     

    /etc/rc.local文件


    只要将相关命令写入该文件,在系统启动时,该命令就会自动执行!

     

    附-两次硬件自检:

    1.固件自检

    2.Linux内核自检

  • 相关阅读:
    hdu 5976 Detachment
    poj 2096 Collecting Bugs
    hdu 4544 湫湫系列故事——消灭兔子
    Educational Codeforces Round 8 B. New Skateboard
    python 迭代器与生成器 区别
    【机器学习】EM算法详细推导和讲解
    【机器学习】极大似然估计详解
    标准sql工单模板
    【机器学习】LDA 浅谈
    Jupyter notebook入门教程
  • 原文地址:https://www.cnblogs.com/itrena/p/5927029.html
Copyright © 2011-2022 走看看