CentOS5和6的系统启动流程

CentOS 5和6的启动流程

我们在启动linux后,等待输入用户名和密码就可以进入系统了。那么linux系统在内部是怎样启动的呢?下面我们就来介绍下linux系统的启动流程。

下面以CentOS6为例详细介绍下Linux系统的启动流程

Linux启动流程的大致过程

(1)POST加电自检

POST(PowerOnSelfTest)首先对每一个设备进行检查。完成后会交给BIOS寻找存有引导记录的设备,找到后读入操作系统引导记录,然后将系统控制权交给引导记录,并由引导记录来完成系统的顺利启动。

(2)MBR引导

MBR(Master Boot Record) MBR记录一般是在磁盘 0 磁道 1 扇区,共512个字节。前446个字节是BootLoder,后 4*16 的 64 个字节是存放分区信息的,最后 2 个字节是校验信息,一般是 55AA。

(3)GRUB(GRand Unified Bootloader)、加载内核

就是MBR中的前 446 个字节,是BooTLoader的一种,它的作用是要选择要启动和加载内核的。

(4)kernel

Linux属于单核系统:Kernel+各种外围模块组成。通过grub加载内核后(有可能会借助于ramdisk加载驱动),内核开始自我解压并工作通过虚拟根文件系统initrfs 调用init工作。

ramdisk:内核中的特性之一:使用缓冲和缓存来回事对磁盘上的文件访问;

CentOS 5: initrd,  工具程序:mkinitrd

CentOS 6: initramfs, 工具程序:mkinitrd, dracut

(5)启动init程序(/sbin/init)

init程序的类型:

SysV: init, CentOS 5

配置文件:/etc/inittab

Upstart: init, CentOS 6

配置文件:/etc/inittab, /etc/init/*.conf

Systemd:systemd, CentOS 7

配置文件:/usr/lib/systemd/system, /etc/systemd/system

/sbin/init程序有0-6,七个级别

0:关机

1:单用户模式(root, 无须登录), single, 维护模式;

2: 多用户模式,会启动网络功能,但不会启动NFS;维护模式;

3:多用户模式,正常模式;文本界面;

4:预留级别;可同3级别;

5:多用户模式,正常模式;图形界面;

6:重启

默认级别为3,5,配置文件是/etc/inittab

每一行定义一种action以及与之对应的process

配置文件中四个字段的定义:id:runlevel:action:process

action:(action的选项)

wait: 切换至此级别运行一次;

respawn:此process终止,就重新启动之;

initdefault:设定默认运行级别;process省略;

sysinit:设定系统初始化方式,此处一般为指定/etc/rc.d/rc.sysinit;

init程序启动以后首先运行脚本/etc/inittab来读取级别,如果你指定级别,就按指定级别运行,不是就是用默认的3级别;

然后运行/etc/rc.d/rc.sysinit这来初始化脚本;

运行完后会执行/etc/rc.d/rc#.d
    /etc/rc.d 目录中存放着123456运行级别的目录,

每一个rc#.d里都包含很多K或S开头的文件这些都是链接文件,这些文件代表这个级别需要启动和关闭的服务,K开头表示需要关闭的服务,S开头表示需要关闭的服务

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

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

chkconfig命令:查看和管理每个级别下的服务的状态

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

chkconfig [--list] [name]或者直接chkconfig

添加:  chkconfig --add name  可以将自己写的一些脚本,让此命令统一管理

这条命令是在每个级别里面创建对应的K或S开头的文件,创建什么类型的文件要根据/etc/rc.d/init.d (/etc/init.d)的配置文件

我们测试一下,编辑一个配置文件/etc/rc.d/init.d/testsrv

删除:  chkconfig --del name 服务不由chkconfig这种机制来管理

修改指定的链接类型:

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

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

使用这个命令修改下chkconfig --level 45 testsrv off

前面执行完了,会执行/etc/rc.d/rc.local脚本,此脚本是启动过程中最后启动的一个脚本。

因此不便或不需写为服务脚本放置于/etc/rc.d/init.d/目录,且又想开机时自动运行的命令可以放在/etc/rc.d/rc.local中

最后会执行 /bin/login 登录用户。至此系统启动过程完成

时间: 2024-12-20 01:20:08

CentOS5和6的系统启动流程的相关文章

CentOS 5,6 系统启动流程详解

一.linux 组成介绍 1.linux 组成: Linux: kernel+rootfs(根文件系统) kernel: 进程管理.内存管理.网络管理.驱动程序.文件系统.安全功能 rootfs: 程序和glibc 库:函数集合, function, 调用接口(头文件负责描述) 过程调用: procedure,无返回值 函数调用: function 程序:二进制执行文件 2.内核设计流派: 单内核(monolithic kernel): Linux 把所有功能集成于同一个程序 微内核(micro

linux基础学习第十九天-系统启动流程(cenots6)以及配置系统服务(chkconfig)

内容:   CentOS 的启动流程   服务管理(chkconfig)   手动制定系统开机服务脚本 一.centos6系统启动流程 综述过程: POST-->BIOS(Boot Sequence)-->MBR(grub,446)-->Kernel-->initramfs(虚根文件)-->(ROOTFS)/sbin/init(/etc/inittab) 步骤详解: 1.POST: POST:Power-On-Self-Test,加电自检,是BIOS功能的一个主要部分.负责完

马哥教育第十三天系统启动流程、grub、模块、bash函数

kernel的功能:进程管理.文件系统.硬件驱动.内存管理.安全功能:SELinux.网络子系统,标准库:glibc 进程是运行在cpu上但用户进程受控于内核,用户进程需要完成特权指令时将触发软中断由用户模式转为内核模式,由内核代为执行特权指令并把结果返回给用户进程. Linux为单内核体系结构但是它支持模块化,模块还可以动态装载或卸载,Linux内核:核心 + 外围模块 核心:/boot/vmlinux-VERSION-release 模块:/lib/modules/VERSION-relea

Linux系统启动流程与内管管理(上)

在讲linux系统启动流程之前,来讲讲linux的组成,这样能能帮助我们深入了解系统的启动流程,废话不多说直接上系统启动流程图 linux组成 linux:kernel+rootfs kenrel的作用:进程管理.内存管理.网络管理.驱动程序.文件系统.安全管理等 rootfs:程序和glibc 库:函数结合,function,调用接口(头文件负责传输) 过程调用:procedure,无返回值 函数调用:function 程序:二进制执行文件 内核设计流派 单内核:把所有功能集成与一个程序 如:

Linux系统启动流程、内核及模块管理

Linux系统启动流程.内核及模块管理 Linux系统的组成部分组成:内核+根文件系统(kernel+rootfs)内核(kernel): 进程管理(创建.调度.销毁等).内存管理.网络管理(网络协议栈).驱动程序.文件系统.安全功能IPC:Inter Process Communication机制本地进程间通信机制:消息队列.semerphor.shm(共享内存)跨主机进程间通信机制:socket等运行中的系统环境可分为两层:内核空间.用户空间内核空间(模式):内核代码(特权级操作-->系统调

学习笔记之centos系统启动流程

 CentOS 系统的启动流程: 简介: (内核级别)POST -读取-> BootSequence(在BIOS中) --> BootLoader(在MBR中)--> Kernel(借助ramdisk完成根文件系统的加载)--> rootfs(readonly)--> /sbin/init (用户空间的第一个程序)接下面 (用户空间的启动流程): /sbin/init (读取/etc/inittab) [centos5,6,7在此略有区别]   设置默认运行级别(1) --&

Linux 内核及系统启动流程

kernel的功能: 进程管理 文件系统 硬件驱动 内存管理 安全功能:SELinux 网络子系统 标准库:glibc 调用:返回 利用别的组件的功能,完成某特定事务 返回值 内核设计流派: 单内核体系: Linux 支持模块化 模块还可以动态装载或卸载 Linux内核:核心 + 外围模块 核心:/boot/vmlinux-VERSION-release 模块:/lib/modules/VERSION-release .ko: kernel object ramdisk: /boot/initr

Centos7系统启动流程

Centos7系统启动流程 1.uefi或BIOS初始化,开始post(power on self test)开机自检 这个过程是开机后,BIOS或UEFI进行硬件检查的阶段.检测:CPU, 内存,硬盘等硬件信息. 2.加载MBR到内存,这里以BIOS为例,BIOS将会直接找硬盘的第一个扇区,找到前446字节,将MBR加载到内存中,MBR将告诉程序下一阶段去哪里找系统的grub引导.此阶段属于grub第一阶段.grub还有1.5阶段和2阶段. 分区符MBR(512字节) 三部分组成: 引导程序:

CentOS系统启动流程

POST(加电自检):检测硬件在CPU的控制下,将RAM芯片中的某个程序映射到ROM地址空间,并执行其中的指令完成系统硬件健康状况检查,例如存储设备.网卡.CPU.声卡等硬件设备是否完好.当检查完成后,所有硬件或基本硬件.核心硬件没有问题,则下一个启动流程BIOS BIOS(Boot Sequence):决定启动介质按照BIOS所设定的系统启动流程,根据引导次序(Boot Sequence)自上而下的寻找对应存储设备上操作系统的MBR(全称为Master Boot Record即硬盘的主引导记录