centos6启动流程
1、上电POST自检,加载BIOS的硬件信息,获取第一个启动设备
2、读取第一个启动设备MBR里的引导加载程序(grub)的启动信息
3、加载核心操作系统的核心信息,核心开始解压缩,并尝试驱动所有的硬件设备
4、核心执行init程序,并获取默认的运行信息
5、init程序执行/etc/rc.d/rc.sysinit文件
6、启动核心的外挂模块
7、init执行运行的各个批处理文件(scripts)
8、init执行/etc/rc.d/rc.local
9、执行/bin/login程序,等待一会登录
10、登录之后开始以shell控制主机
.如图所示
MBR(Master Boot Recorder),
我们称之为主引导记录。
BIOS是怎样寻找可启动设备的呢?
我们知道在分区时,硬盘的第一块扇区512个字节就是存放的MBR,
如果该设备是可启动设备,那么该扇区的最后两个字节肯定是55/AA,
所以此时在寻找可启动设备时,如果发现该设备的最后两个字节是这个,
那么该设备就是可启动设备。
BIOS在找到可启动设备以后就会执行其引导代码,
因为MBR占据了第一块扇区的512字节,分区表占用了 16*4=64字节,
再加上最后两个标志字节,
所以MBR的引导代码就是MBR的前446个字节,
当然这446个字节太小了,并不能完成整个操作系统的引导程序,
所以这446个字节里面可能存放的就是启动引导程序的一些代码。
GRUB
是引导加载程序,
将引导操作系统,启动引导器是计算机启动过程中运行的第一个真正的软件,
计算机启动时在通过BISO自检后读取并运行引导介质上最前面的扇区
即硬盘主引导扇区(MBR)中的启动引导器程序,
这里的扇区中:MBR占据了第一块扇区的512字节,
但其实际只占用了其中的446个字节,
另外的64个字节交给了DPT(Disk Partition Table硬盘分区表),
最后两个字节“55,AA”是分区的结束标志。
启动引导器在负责加载启动硬盘分区中的操作系统。
如果启动引导器不能正常工作,将导致操作系统不能正常启动,
从而整个计算机瘫痪。
通常,每个操作系统在安装过程中都要将自带的启动器写在硬盘(MBR),
以便能过进行自身的 引导
自定义启动脚本,添加启动项中
安全加固selinux
selinux是⼀种安全策略机制。
selinux有四种⼯作类型:
trict:在centos5中,每个进程都受到selinux的控制;
targeted:用来保护常见的网络服务,仅有限进程受到selinux控制,centos5保护88个务;
minimunm:在centos7中修改targetd,只对选择的网络服务;
mls:提供MLS(多级安全)机制的安全性。
一般设置默认为targeted类型,不需要修改。
selinux有三种⼯作状态:
enforce:强制,每个受限的进程都必然受限;
permissive:允许,每个受限的进程违规操作不会被禁止,但会被记录于审计日志;
disabled:禁用.
# selinux
安全标签 的说明
安全标签又成安全上下文
即content值:unconfined_u:object_r:httpd_sys_content_t:s0
安全上下⽂有五个元素组成,
格式为:user:role:type:sensitivity:category (⼀般category部分不显⽰,)
unconfined_u:代表的是user位置,指示登录系统的用户类型,如root,user_u,system_u,
多数本地进程都属于*(unconfined)进程;
object_r:代表的是role位置,定义文件,进程和用户的用途:文件:object_r,
进程和用户: system_r;
httpd_sys_content_t:代表的是type位置,指定数据类型,
规则中定义何种进程类型访问何种文件Target策略基于type实现,
多服务共用:public_content_t;
s0:代表的是sensitivity位置,限制访问的需要,
由组织定义的分层安全级别,
如unclassified, secret,top,secret, ⼀个对象有且只有⼀个sensitivity,
分0-15级, s0最低,Target策略默认使⽤s0;
Category:对于特定组织划分不分层的分类,
如FBI Secret,NSA secret,
一个对象可以有多个categroy,c0-c1023共1024个分类,
Target 策略不使用ategory