简述Linux系统的引导过程与服务控制

引导过程总览

开机自检(BIOS)

检测硬件设备,检测出第一个能引导系统的设备,硬盘。

MBR引导

运行在 MBR 扇区(硬盘的最小存储单位 512字节)里的启动 GRUB 引导程序

GRUB菜单

GRUB 引导程序通过读取GRUB配置文件(/boot/grub2/grub.cfg)获取内核和镜像文件系统的设置和路径,屏幕显示grub菜单

加载内核(kernel)

把内核和镜像文件系统加载到内存中

内存会把init进程(systemd)加载到内存中运行

内存会把init进程(systemd)加载到内存中运行

  • PS:init的pid固定为1,centos7的init进程为systemd,/sbin/init
    centos6及以前使用的是sysVinit,传统SysVinit依赖于串行执行 Shell 脚本启动服务,导致效率低下,系统启动速度较慢

centos7的systemd是并行启动脚本服务,启动速度快;systemd能够将更多的服务进程并行启动,并且具有提供按需启动服务的能力,使得启动更少进程,从而提高系统启动速度。

系统初始化进程

init进程

  • 有Linux内核加载运行/sbin/init程序
  • init进程是系统中第一个进程
  • init进程的PID(进程标记)号永远为1

systemd

  • systemd是Linux操作系统的一种init软件
  • centos7中采用了全新的systemd启动方式,取代传统的sysVinit
  • centos7中运行的第一个init进程是/lib/systemd/systemd

修复MBR扇区故障

故障原因

  • 病毒、木马等造成的破坏
  • 不正确的分区操作、磁盘读写误操作

故障现象

  • 找不到引导程序,启动终端
  • 无法加载操作系统,开机后黑屏

解决思路

  • 提前备份号文件
  • 以安装光盘引导进入急救模式
  • 从备份文件中恢复

如何进行MBR扇区的故障修复

第一步:备份

我们进行备份的前提条件要求,除了我们本身的系统磁盘,我们还需要有额外的一块硬盘,并将系统磁盘的内容备份到另一块普通磁盘中。

在这里插入图片描述
建立好第二块磁盘的文件系统后,我们进行文件的备份

首先,我们向将sda磁盘中的内容复制到一个文件夹下,取名为mbr.bak,并将这个文件复制到我们好的硬盘的挂载点上

在这里插入图片描述
在这里插入图片描述
为什么我们只复制512字节?因为我们系统磁盘中前512字节中含有我们系统的引导程序,我们只需要复制引导程序,在后续的急救操作中正确修正即可正常进入系统

接下来我们模拟硬盘引导系统被破坏的情况:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

接下来进入开机画面
在这里插入图片描述
进入急救模式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我们从上面查看根目录能发现,我们之前存储的备份文件的文件夹并没有在根目录上。其实目前界面内的目录,属于一个虚拟目录,但是我们的数据是实际存在在我们的挂载点上。这个时候我们新建一个空目录,将我们另一块正常硬盘做一个挂载,挂载到我们的空目录上:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重启结束后,我们正常可以进入系统了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值