linux系统的引导过程是怎么走的,出现故障该如何修复?

it2025-12-03  2

本文目录

一.Linux操作系统引导过程1.1 引导过程1.2 系统初始化进程1.2.1 systemd单元类型 二.排除启动类故障2.1 修复MBR扇区故障2.2 实验操作2.3.grub引导故障2.4.遗忘root用户密码 三.系统服务控制3.1 控制类型3.2 优化启动过程

一.Linux操作系统引导过程

1.1 引导过程

主要分为以下方面:

1开机自检(BIOS) 自检基本的硬盘,找到第一块能够引引导的设备

2.MBR引导 找到硬盘MBR引导分区,读取GRUB信息

3GRUB菜单 读取grub.conf信息,里面包含内核信息,等待时间等

4加载内核(kernel) 加载内核和镜像文件

5.init进程初始化 加载初始化进程1 PID1

1.2 系统初始化进程

init进程由Linux内核加载运行 /sbin*init程序是系统第一个进程 PID(进程标记)号永远是1。

软件选用:Systemd

软件概述:

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

1.2.1 systemd单元类型

2.运行级别所对应的systemd目标

二.排除启动类故障

2.1 修复MBR扇区故障

产生的原因:

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

故障的现象:

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

解决思路:

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

2.2 实验操作

模拟MBR扇区实验

加一块硬盘做实验进系统查看磁盘fdisk -l ##看是否有sdb

版本:centos7.0以上

加一块硬盘做实验

进系统查看磁盘 fdisk -l ##看是否有sdb mkfs -t xfs /dev/sdb ## 格式化sdb mmount /dev/sdb /opt ##挂载

1.备份MBR扇区数据 dd if=/dev/sda of=/opt/mbr.bak bs=512 count=1

2.模拟MBR扇区故障 dd if=/dev/zero of=/dev/sda bs=512 count=1

3.重启后观察系统是否有问题出现 operating system not found (出现故障,MBR挂了)

如图:

解决MBR故障的步骤如下:

1.装入光盘,在光盘的引导界面选择troubleshooting

2.进入troubleshooting菜单选择Rescue a centos system

3.进入引导可以按回车,或者等待 按1再按回车进入sh-4.2

4.mount /dev/sdb/mnt ##将备份sdb备份的文件挂到mnt下,然后进去看看 是否有mbr.bak

5.dd if=/mnt/mbr.bak of=/dev/sda count=1 bs=512

6.重启reboot进入系统测试是否正常

2.3.grub引导故障

GRUB 故障的解决方案

1.装入光盘,在光盘引导界面选择troubleshooting:

2.进入troubleshootiing菜单 选择Rescue a centos system

3.进入引导可以按回车,或者等待 按1 再按回车进入sh-4.2 #

4.进入救援模式后切根 chroot /mnt/sysimage/

5.使用grub2-install 命修复grub #### 修复不好使用下面第7项命令进行修复 grub2-install /dev/sda

6.查看是否修复 cd /boot/grub2/

7.修复grub.cfg 配置文件 grub2-mkconfig -o /boot/grub2/grub.cfg

8.查看是否修复 cd /boot/grub2 ls

9.重启 exit reboot ####主要改启动项,否则还是进光盘模式

2.4.遗忘root用户密码

解决遗忘root密码的方案

1.装入光盘,在光盘引导界面选择troubleshooting:

2.进入troubleshooting菜单选择Rescue a centos system

3.进入引导后可以按回车,或者等待 按1再按回车进入sh-4.2#

4.进入救援模式后切根 chroot /mnt/sysimage

5.修改密码; passwd root 输入密码:123 ##第一次 输入密码:123 ##第二次

6.重启 exit reboot ######主要改启动项,否则还是进入光盘模式

三.系统服务控制

语法:systemctl 控制类型 服务名称

3.1 控制类型

start:启动 stop:停止 restart:重新启动 reload:重新加载 status :查看服务状态

systemctl is-enabled ##服务名称 查看系统服务的启动状态

systemctl enable/disable ##服务名称 设置系统服务的启动状态

3.2 优化启动过程

最新回复(0)