linux操作系统引导过程和服务控制


Linux操作系统引导过程

linux系统引导过程

在这里插入图片描述

1.开机自检
服务器主机开机以后,将根据主板 BIOS 中的设置对CPP (Central Processing Unit,中央处理器)、内存、显卡、键盘等设备进行初步检测,检测成功后根据预设的启动顺序移交系统控制权,大多时候会移交给本机硬盘。
总结:检测出第一个能够引导系统的设备比如硬盘或光驱。
2.MBR引导
当从本机硬盘中启动系统时,首先根据硬盘第一个扇区中 MBR (Master Boot Record,主引导记录〉的设置,将系统控制权传递给包含操作系统引导文件的分区;或者直接根据MBR记录中的引导信息调用启动菜单(如GRUB) 。
总结:运行放在MBR扇区里的启动GRUB引导程序。
3.GRUB菜单
对于Linux操作系统来说,GRUB(GRand Unified Bootloader,统一启动加载器)是使用最为广泛的多系统引导器程序。系统控制权传递给GRUB以后,将会显示启动菜单给用户选择,并根据所选项(或采用默认值)加载Linux内核文件,然后将系统控制权转交给内核。需要注意的是,centos 7采用的是 GRUB2启动引导器。
总结:GRUB引导程序通过读取GRUB配置文件/boot/grub2/grub.cfg,来获取内核和镜像文件系统的设置和路径位置。
4.加载Linux内核
Linux内核是一个预先编译好的特殊二进制文件,介于各种硬件资源与系统程序之间,负责资源分配与调度。内核接过系统控制权以后,将完全掌控整个Linux操作系统的运行过程。在 Centos 系统中,默认的内核文件位于"/boot/vmlinuz-3.10.0-514.el7.x86_64"。
总结:把内核和镜像文件系统加载到内存中。
5.init进程初始化
为了完成进一步的系统引导过程,Linux内核首先将系统中的"/sbin/init"程序加载到内存中运行(运行中的程序称为进程), init进程负责完成一系列的系统初始化过程,最后等待用户进行登录。
总结:加载硬件驱动程序,内核把init进程加载到内存中运行。
在这里插入图片描述

grub2与grub的区别
1、支持多种文件系统格式
2、在grub中stagel stage1-5 stage2已经被取消
3 、grub2使用模块机制,通过动态加载需要的模块来扩展功能,这样做的好处允许core镜像更小
4、支持自动解压
5、配置文件的不同最明显的。/boot/grub/grub.conf已经被/boot/grub2/grub.cfg代替。即使你用root用户也不要编辑,该文件会在每次执行grub2-mkconfig后自动执行。
/etc/default/grub是改变引导菜单外观的主要配置文件
/etc/grub.d/*各种用于生成grub.cfg的脚本文件,每次执行grub2-mkconfig时会执行里面的文件
systemd的优点
init:
一是启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程
二是启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值