引导过程与服务控制

Linux引导过程大致分为以下几个步骤:

  1. 主引导记录(Master Boot Record,MBR)加载:计算机开机时会读取硬盘上的主引导记录,主引导记录包含了引导加载程序,这个引导加载程序会查找操作系统的启动文件。

  2. 引导加载程序加载:引导加载程序可以是GRUB(Grand Unified Boot Loader)或者其他引导加载程序,它负责加载操作系统的内核(kernel)和初始内存盘(initrd)。

  3. 内核加载:引导加载程序会加载Linux内核,内核是操作系统的核心,它负责管理系统的资源,处理系统调用等。

  4. initrd加载:在一些系统中,initrd是一个临时根文件系统,包含了启动所需的驱动程序和工具。一旦内核加载完成,initrd会被卸载。

  5. 初始化进程启动:内核加载完成后,会启动第一个用户空间进程 init(或者 systemd),这个进程负责初始化系统,加载设备驱动程序,启动系统服务等。

1.系统初始化进程及文件

1.init进程

Linux系统中进程会用数字进行标记,称为PID,“/sbin/init”是第一个内核加载的程序,进程对应的PID总为1。

2.systemd概述

centos 7 系统中全新的systemd启动方式,取代了传统的sysvinit。systemd守护进程负责Linux的系统和服务,systemctl用于控制systemd管理的系统和服务状态。

单元类型扩展名说明
service.service描述一个系统服务
socket.socket描述一个进程间通信的套接字
device.device描述一个内核识别的设备文件
mount.mount描述一个文件系统的挂载点
automount.automount

描述一个文件系统的自动挂载点

swap.swap描述也该内存交换设备或交换文件
path.path描述一个文件系统中文件或目录
timer.timer描述一个的定时器
snapshot.snapshot用于保存一个systemd状态
scope.scope使用systemd的总线接口以编程的方式创建外部进程
slice.slice描述居于cgroup的一组通过层次组织的管理进程
target.target描述一个systemd的单元

Linux系统服务是指运行后台提供特定功能的应用程序,如网站,FTP等

在Linux系统中,运行级别(runlevel)是系统的一种状态,决定了系统启动时运行哪些服务和进程。在传统的Unix系统中,运行级别通常从0到6,每个级别代表了系统启动时运行的不同服务和进程。不同的运行级别可以用来实现不同的功能,例如单用户模式、多用户图形模式等。

在现代的Linux系统中,通常使用systemd作为初始化系统,而不再使用传统的运行级别。systemd引入了targets的概念,用于替代传统的运行级别。每个target都定义了一组需要启动的服务和进程,类似于传统运行级别的概念。

运行级别systemd的target说明
0关机状态使用该级别会关闭主机
1rescue.target单用户模式,不需要密码登录,多用于系统维护
2multi-user.target用户定义/域特定级别,默认等同于3
3mulit-user.target字符界面的完整多用户模式
4mulit-user.target用户定义/域特定运行级别,默认等同于3
5graphical.target图形界面的多用户模式
6reboot.target重新启动,使用会重启主机

2.排除系统启动类故障

1.MBR扇区故障

MBR(Master Boot Record)是存储在磁盘的第一个扇区(通常是第0扇区)上的特殊区域,用于启动计算机并加载操作系统。MBR包含了启动代码和分区表,其中记录了硬盘上所有分区的信息。

在MBR中,主要包含以下内容:

  1. 主引导记录(Master Boot Record):存储在磁盘的第一个扇区,占用512个字节。其中包含了引导加载程序(Boot Loader)和分区表。

  2. 分区表(Partition Table):记录了硬盘上各个分区的信息,例如分区类型、起始位置、大小等。MBR最多支持4个主分区,或者3个主分区和一个扩展分区,每个扩展分区可以包含多个逻辑分区。

  3. 引导加载程序(Boot Loader):负责加载操作系统并将控制权交给操作系统的内核。引导加载程序会查找操作系统所在的分区,并将其加载到内存中执行。

备份MBR扇区数据

将第一块硬盘的MBR扇区备份到/dev/sda1

模拟MBR扇区故障

执行以下操作可以从设备文件zero中读取512字节数据覆盖到第一块硬盘

3.从备份文件恢复MBR扇区数据

在向导界面选择‘troubleshooting’选项

再选择“rescue a openeuler linux system”选项,将以救援模式引导Linux操作系统

 然后系统会自动查找硬盘中的Linux分区将其挂载,再输入”1“确认

按回车键后进入提示符界面、

完成恢复后,输入exit退出,系统会自动重启。

2.GRUB引导故障

GRUB(GRand Unified Bootloader)是一个常用的引导加载程序,用于在计算机启动时加载操作系统。GRUB通常安装在硬盘驱动器的引导扇区,负责加载操作系统内核并引导系统启动。

GRUB引导故障可能出现在多种情况下,例如:

  1. 操作系统或内核更新导致的配置问题。
  2. 硬盘损坏或分区错误。
  3. 多重引导设置错误。
  4. 操作系统安装错误或损坏。
  5. 各种原因导致的GRUB配置文件损坏。

在该提示符后进行编辑,输入对应的引导命令(参考其他版本的文件引导语句),执行boot命令即可正常引导。

3.遗忘root用户的密码:

重新启动计算机,在引导过程中按下 Shift 键,进入 GRUB 引导菜单。进入救援模式

输入:passwd root

4.系统服务控制

systemctl 控制类型 服务名称

常见的控制类型如下:

start(启动):运行指定的系统服务程序,实现服务功能。

stop(停止):终止指定的系统服务程序,关闭功能。

restart(重启):重新启动指定服务程序。

reload(重载):不退出服务程序,刷新配置。

status(查看状态):查看指定的系统服务的运行状态。

例如:执行以下操作可启动尚未运行的服务。

5.切换运行级别

1.查看当前系统的target

2.切换系统的target

init   运行级别

6.优化启动过程

使用ntsysv工具

操作时按方向键来选择不同的系统服务,按空格键开启或关闭系统服务的默认状态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值