栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

8.引导过程与服务控制

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

8.引导过程与服务控制

文章目录
    • Linux操作系统引导过程
    • 系统初始化进程
    • Systemd单元类型
    • 运行级别所对应的 Systemd 目标
    • 修复MBR扇区故障
      • 1.实验
    • 修复 GRUB 引导故障
    • CentOS 7忘记root用户密码重置,修改
    • 系统服务控制
    • Linu系统的运行级别
    • chkconfig工具
    • chkconfig工具

Linux操作系统引导过程

引导过程总览:

详细版:

1.开机自检:

服务器主机开机后,将根据主板 BIOS 中的设置对 CPU (中央处理器),内存,显卡,键盘等设备进行初步检测,检测成功后根据预设的启动顺序移交系统控制权,大多时候会移交给本机硬盘

总结:检测出第一个能够引导系统的设备,比如硬盘或光驱,U盘

2.MBR引导:

当从本机硬盘中启动系统时,首先根据硬盘第一个扇区中 MBR(主引导记录)的设置,将系统控制权传递给包含操作系统引导文件的分区,或者直接根据 MBR 记录的引导信息调用启动菜单(如 GRUB),

总结:运行放在 MBR 扇区里的启动 GRUB 引导程序

3.GRUB菜单:

对于 Liunx 操作系统来说,GRUB(统一启动加载器)是使用最为广泛的多系统引导器程序,系统控制权传递给 GPUB 以后,将会显示启动菜单给用户选择,并根据所选项(或采用默认值)加载 Liunx内核文件,然后将系统控制权转交给内核,注意 CentOS 7 采用的是 GRUB2 启动引导器

总结:GRUB 引导程通过读取 GRUB 配置文件 /boot/grub2/grub.cfg 来获取内核和镜像文件系统的设置和路径位置

4.加载 Liunx 内核

Liunx 内核是一个预先编译好的特殊二进制文件,介于各种硬件资源与系统程序之间,负责资源分配与调度,内核接过系统控制权以后,将完全掌握整个 Liunx 操作系统的运行过程,在 CentOS 系统中,默认的内核文件位于 /boot/vmlinuz-3.10.0-514.e17.x86_64

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

5.init进程初始化

为了完成进一步的系统引导过程,Liunx 内核首先将系统中的 /sdin/init 程序加载到内存中运行(运行中的程序程称为进程),init 进程负责完成一系列的系统初始化过程,最后等待用户进行登陆 systemd

总结:加载硬件驱动程序,内核把 init 进程加载到内存中运行

区别:

传统Sysinit依赖于串行执行Shell 脚本启动服务,导致效率低下,系统启动速度较慢

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

简化版:

1.开机自检:为了通电测试下硬件有无问题,是否就绪

2.MBR引导程序:加载系统启动程序列表

3.GRUB2菜单:可以按照用户的需求来启动自定的程序,包含了默认启动的程序

4.加载内核:内核,镜像加载到内存准备启动使用

5.init进程初始化:加载系统默认的进程程序,例如驱动,加载到内存中,准备提供给用户使用

简单逻辑:

1.通电测试硬件

2.知道加载什么系统程序 (会参照用户自定义----BIOS)

3.提交菜单(需要加载,启动的程序)准备给于内核

4.加载核心程序:内核和镜像放到内存

5.启动菜单中的程序放到内存

目的:呈现一个完整的操作系统给与用户使用(登录使用)

系统初始化进程

init进程:

由 Linux 内核加载运行 /sbin/init 进程

init进程是系统中第一个进程

init进程的PID(进程标记)号永远为1

Systemd

Systemd是Linux 操作系统的一种init软件

CentOS 7 中采用全新的Systemd启动方式,取代了传统的SysVinit

CentOS 7 运行的第一个init 进程是 /lib/systemd/sysmd

总结:

Systemd单元类型

运行级别所对应的 Systemd 目标

修复MBR扇区故障

故障原因:

病毒,木马等造成的破坏

不正确的分区操作,磁盘读写误操作

故障现象:

找不到引导程序,启动中断

无法加载操作系统,开机后黑屏

解决思路:

应提前作好备份

已安装光盘引导进入急救模式

从备份文件中恢复

1.实验

1.先分盘,备份MBR扇区数据到其它磁盘(/dev/sdb1)

创建一个备份目录

格式化一下让系统识别

挂载目录,建议做一下永久挂载

永久挂载,mount -a 刷新下

备份

2.模拟破坏MBR引导扇区,把系统里的前512字节覆盖(破坏掉)

3.关机重启,引导到急救模式,从备份文件中恢复MBR扇区数据

选择 1)回车

在急救模式下创建目录,好把备份文件恢复

挂载带有备份文件分区恢复MBA扇区数据

执行 exit 命令退出临时Shell环境,系统将会自动重启

修复 GRUB 引导故障

通过镜像恢复即可

1.引导界面进入急救模式,重建GRUB菜单配置文件

实验:

删除(破坏)GRUB菜单配置文件

rm -rf /boot/grub2/grub.cfg

关机 init 6

关机后输入 exit 返回到要引导到急救模式

进入急救模式,加载光盘镜像,切换到系统根环境

重新将GRUB引导程序安装到第一块硬盘(/dev/sda)的扇区

重新构建GRUB菜单的配置文件

退出chroot环境,并重启即可

CentOS 7忘记root用户密码重置,修改

第一步先重启在这个界面按c

切换到镜像模式

重设root用户密码,退出镜像模式,重新启动即可

系统服务控制

格式:

systemctl 控制类型 服务名称

控制类型

start:启动

stop:停止

restart:重新启动

reload:重新加载

status:查看服务状态

关闭后显示

disabled 防止开机自启

enable 开启开机自启(不关闭的话,是默认开启的)

加–now 表示开启开机自启动,并现在开启

watch -n 1 表示每一秒刷新,你要实时检测那个服务动态

Linu系统的运行级别

查看运行级别

runlevel命令:只能查看切换运行级别与当前运行级别

systemctl工具:systemctl时能查看默认的运行级别

临时切换运行级别

init命令:init的命令参数是运行级别所对应的数字

systemctl工具:systemctl的命令参数是具体的target

两个方法:

chkconfig工具

格式:

chkconfig --list 服务名称

chkconfig --add 服务名称

chkconfig --level 级别列表服务名on/off

链图片转存中…(img-s2udllJR-1653716720458)]

[外链图片转存中…(img-mgkRzwfH-1653716720458)]

[外链图片转存中…(img-KXp1GSCC-1653716720458)]

[外链图片转存中…(img-Cn5Nprgt-1653716720458)]

chkconfig工具

格式:

chkconfig --list 服务名称

chkconfig --add 服务名称

chkconfig --level 级别列表服务名on/off

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/941616.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号