CentOS6启动流程

CentOS 6 启动流程 | root密码重置 | 添加系统服务

一、CentOS 6 启动流程:

    1)POST加电自检

        Power-On-Self-Test,主板在接通电源后,系统首先由BIOS程序来对对CPU、主板、内存、硬盘子系统、显示子系统、串并行接口、键盘、CD-ROM光驱等硬件情况的检测。

        自检中如发现有错误,将按两种情况处理:对于严重故障则停机,对于非严重故障则给出提示或声音报警信号,等待用户处理。

        主板上 ROM:保存了BIOS程序    RAM:保存各项参数设定

        BIOS按设定次序查找引导设备,第一个有引导程序的设备为本次启动设备

    2)读取 MBR

        读取第一个启动设备MBR中的bootloader(前446字节),CentOS 6为grub程序,bootloader空间有限仅保存了grub第一阶段stage1。

    3)引导加载程序 GRUB

        stage1:存在于MBR前446字节中,加载stage1_5,stage2,initramfs*.img

        stage1_5:在MBR之后62个扇区中,保存了必要的文件系统驱动程序等,让stage1能识别stage2所在分区上的文件系统;

        stage2:提供菜单交互接口,让用户以选项方式加载内核、改变参数、修改选项,获取grub.conf以及menu.lst等文件的内容,可提供认证保护机制。

    4)加载内核

        自身初始化:

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

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

    内核无法识别硬盘上各驱动程序所在的设备,借助已识别的boot分区中的initramfs-VERSION-RELEASE.img文件(一个压缩的小型根目录,包含启动阶段必须的驱动模块,可执行文件和启动脚本),

将其挂载为临时根目录,执行启动脚本,加载真实文件系统以挂载真正的根目录并切换根目录。

        以只读方式挂载根文件系统

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

    5)启动 init

        内核加载完毕,运行init程序,系统启动的控制权移交给init进程

        init进程是所有进程的父进程,它会读取配置文件/etc/inittab,进行以下工作:

        1.执行系统初始化脚本(/etc/rc.d/rc.sysinit),对系统进行基本的配置,以读写方式挂载根文件系统及其它文件系统,进行运行级别的确定及相应服务的启动;
        2.确定启动后进入的运行级别,共7个,默认3,5;
        3.执行/etc/rc.d/rc,定义服务启动的顺序是先K后S,具体的每个运行级别的服务状态是放在/etc/rc.d/rc#.d(#=0~6)目录下,所有的文件均链接至/etc/init.d下的相应文件。
        4.有关key sequence的设置
        5.有关UPS的脚本定义
        6.启动虚拟终端/sbin/mingetty 
        7.在运行级别5上运行X

    系统初始化:

   POST–>BootSequence(BIOS)–>Bootloader(MBR)–>kernel(ramdisk)–>rootfs–>/sbin/init

    在rc.loacl中添加自定义开机运行脚本:

        正常级别下,最后启动的一个服务S99local没有链接至/etc/init.d下的某脚本,而是链接至了/etc/rc.d/rc.local (/etc/rc.local)脚本;因此,不便或不需写为服务脚本的程序期望能开机自动运行时,可直接放置于此脚本文件中。



二、root密码重置

    1.进入单用户模式

        开机时键入 e ,进入grub菜单页面,键入 a,在kernel行尾添加1,s,S,sigle任意一个,即单用户模式,回车启动系统

    2.直接用passwd更改密码

        进入命令行后直接键入passwd即可更改密码


三、添加系统服务

    CentOS 6中系统服务脚本都放在/etc/init.d目录下,当用户使用service命令对某个服务进行操作时,实际上是调用了该目录下的脚本,所以我们也可以添加自己的服务脚本。

    1.编写服务脚本

        前三行基本格式:vi testsrv

            #!bin/bash

            #chkconfig: 35 91 09

            #description:testsrv..

    脚本第一行为shellbang

    第二行chkconfig后跟3个数,第1个数为需启动的级别,35表运行级别为3或5时启动;第2个数为启动优先级,数字越大优先级越低,越在后面启动;第3个数为关闭优先级,数字越小优先级越高,越先关闭;

    一般后两个数之和为100,被依赖性不高的服务可以后启动,后启动的先关闭;后两位若为一位数(0-9),应写成08格式

    第三行为描述信息,可根据需要修改。

        服务脚本应能识别基本的参数 [ start|stop|restart|status ]

        将写好的脚本放在/etc/init.d目录下

    2.添加为系统服务

        chkconfig –add /etc/init.d/testsrv

        该命令将脚本添加为系统服务,让chkconfig可以管理它,并在每个运行等级启动服务(/etc/rc.d/rc#.d)目录下创建对应符号链接K/S入口,K开头表关闭,S开头表启动

    3.服务操作

        chkconfig –level 35 testsrv on    修改服务的默认启动等级

        service testsrv restart    重启服务

作业

1、每周2, 4, 7备份/var/log/messages文件至/logs目录中,文件名形如“messages-yyyymmdd”

* * * * * /bin/cp /var/log/messages /logs/messages-`date +\%Y\%M\%d`

2、每两小时取出当前系统/proc/meminfo文件中以S或M开头的信息追加至/tmp/meminfo.txt文件中

* */2 * * * grep "^[SM]" /proc/meminfo >>/testdir/meminfo.txt

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

(0)
JasperJasper
上一篇 2016-09-08 18:55
下一篇 2016-09-08 18:55

相关推荐

  • Buffer和Cache的区别

    1、buffer(缓冲) 是为了提高内存和硬盘(或其他I/O设备)之间的数据交换的速度而设计的。 2、cache(缓存) 从CPU角度考虑,是为了提高cpu和内存之间的数据交换速度而设计的,例如平常见到的一级缓存、二级缓存、三级缓存。 cpu在执行程序所用的指令和读数据都是针对内存的,也就是从内存中取得的。由于内存读写速度慢,为了提高cpu和内存之间数据交换…

    Linux干货 2018-01-02
  • 计算机的组成及其功能

    计算机由五大组成部分 运算器 运算器主要负责数据的算术运算或者逻辑运算 控制器 控制器负责调度系统指令 存储器 存储数据的地方,如硬盘和内存 输入设备和输出设备 主要用于人机交互,如键盘、鼠标,显示器

    2018-03-04
  • wk_03作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 who |cut -d' ' -f1|uniq 2、取出最后登录到当前系统的用户的相关信息。 # who |tail -1 |cut -d &#03…

    Linux干货 2016-12-15
  • Nginx及其相关配置详解(二)

    与套接字相关的配置: 1、server { … }  #配置一个虚拟主机;         Default:—         Context:http server { # 配…

    2017-07-14
  • windows server 2008 r2 每隔一段时间自动关机

    首先来说一下我的狗血经历:     话说作为一个地铁汪,每天背着电脑从房山到朝阳那简直就是能累死我的节奏,所以我跟公司申请我不要用自己的笔记本了(补助我不要了)。最后公司把一台不用的server 2008r2给我用,12G内存,志强CPU,跑虚拟机杠杠的。 但是噩梦开始了,我发现一个特点,这台server 2008 r…

    2015-11-26
  • 进程管理之进程基础及操作命令

    进程管理 今天我们开始讲进程管理的相关知识,进程是学习LInux系统的重要一节内容,不仅能更帮助我们了解LInux系统的原理组成,又能方便我们在平常运维工作中的管理工作,帮助我们故障排查.希望大家牢固的掌握进程知识. 以下是我们分享的内容: 概论 进程控制 进程管理工具 概论 程序执行: 多道程序的执行分为顺序执行和并发执行 程序顺序执行时的特征: &nbs…

    Linux干货 2016-09-07

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-10 09:57

    每周2, 4, 7:表示为 * * * * */2,4,7