系统启动流程upstar

  1. 系统启动流程总结

    Post

Boot sequence

Boot loader(MBR)

硬盘上的bootloader就是我们说的mbr

MBR:446Byte: bootloader

64Byte: fat

2Byte: 55AA

Grub:bootloader: 1st stage

disk: 2nd stage

Kernelramdisk

在grub实际上是还有1.5阶段,由于第二阶段是在硬盘里,所以必须要有基本的能够读取基本文件格式的驱动就是放在紧挨着MBR后面的一段安装完成系统的时候系统会把最基本的驱动放在那里,保证能够读到第二阶段的数据。

这是ramdisk类似一个根结构。

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

加载驱动等等。

根切换

运行init

Cenos5、6 程序文件

Centos7

加载配置文件(设置默认运行级别)

Centos 5:

配置文件

[root@localhost ~]# cat /etc/inittab

id:2:initdefault:

si::sysinit:/etc/rc.d/rc.sysinit

l0:0:wait:/etc/rc.d/rc 0

l1:1:wait:/etc/rc.d/rc 1

l2:2:wait:/etc/rc.d/rc 2

l3:3:wait:/etc/rc.d/rc 3

l4:4:wait:/etc/rc.d/rc 4

l5:5:wait:/etc/rc.d/rc 5

l6:6:wait:/etc/rc.d/rc 6

1:2345:respawn:/sbin/mingetty tty1

2:2345:respawn:/sbin/mingetty tty2

3:2345:respawn:/sbin/mingetty tty3

4:2345:respawn:/sbin/mingetty tty4

5:2345:respawn:/sbin/mingetty tty5

6:2345:respawn:/sbin/mingetty tty6

# Run xdm in runlevel 3

x:5:respawn:/etc/X11/prefdm –nodaemon

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Centos6:配置文件:

/etc/inittab

id:2:initdefault:

运行系统初始化脚本(rc.sysinit.com

Centos 5 centos6都有此步骤

/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) 清理操作;

启动运行级别程序

id:2:initdefault:

l0:0:wait:/etc/rc.d/rc 0

l1:1:wait:/etc/rc.d/rc 1

l2:2:wait:/etc/rc.d/rc 2

l3:3:wait:/etc/rc.d/rc 3

l4:4:wait:/etc/rc.d/rc 4

l5:5:wait:/etc/rc.d/rc 5

l6:6:wait:/etc/rc.d/rc 6

说明:rc 0 –> 意味着读取/etc/rc.d/rc0.d/

K*: K##*:##运行次序;数字越小,越先运行;数字越小的服务,通常为依赖到别的服务;

S*: S##*:##运行次序;数字越小,越先运行;数字越小的服务,通常为被依赖到的服务;

for srv in /etc/rc.d/rc0.d/K*; do

$srv stop

done

for srv in /etc/rc.d/rc0.d/S*; do

$srv start

done

chkconfig命令

查看服务在所有级别的启动或关闭设定情形:

chkconfig [–list] [name]

添加:

SysV的服务脚本放置于/etc/rc.d/init.d (/etc/init.d)

chkconfig –add name

#!/bin/bash

#

# chkconfig: LLLL nn nn

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

#!/bin/bash

#

# chkconfig: 2345 20 80

# description: Saves and restores system entropy pool for \

# higher quality random number generation.

echo “It is a test”

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

删除:

chkconfig –del name

修改指定的链接类型

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

–level LLLL: 指定要设置的级别;省略时表示2345;

注意:正常级别下,最后启动一个服务S99local没有链接至/etc/rc.d/init.d一个服务脚本,而是指向了/etc/rc.d/rc.local脚本;因此,不便或不需写为服务脚本放置于/etc/rc.d/init.d/目录,且又想开机时自动运行的命令,可直接放置于/etc/rc.d/rc.local文件中;

启动用户终端

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值