Linux系统引导过程及引导修复

1.系统引导过程概述

在这里插入图片描述

2.BIOS初始化

  • 对硬件检测
  • 初始化硬件时钟

3.grub磁盘引导阶段

3.1 MBR

  • 主引导记录(MBR,Master Boot Record)是位于磁盘最前边的一段引导(Loader)代码
  • mbr 的作用是为了记录 /boot 目录所在分区位置
  • 位置:磁盘的 0 磁道 1 扇区的前 446 字节
  • 当mbr数据丢失系统会因找不到启动分区而停止启动

3.2 问题模拟

1.查看系统磁盘
在这里插入图片描述
2.清空/dev/nvme0n1上的mbr数据,重启系统,无法正常启动
在这里插入图片描述

3.3 修复

1.在bios中设置用光盘启动
在这里插入图片描述
2.进入系统挽救模式
在这里插入图片描述
在这里插入图片描述
3.在挽救模式中,输入以下命令,重新安装grub2到系统硬盘上
在这里插入图片描述
4.输入两次exit,退出重启
在这里插入图片描述
5.在bios中设置从硬盘启动,系统可以正常使用
在这里插入图片描述

4.grub2文件引导阶段

4.1 基本介绍

  • 文件位置:

    • redhat企业7:/boot/grub2/grub.cfg
    • redaht企业8:/boot/grub2/grub.cfg;/boot/loader/entries/xxxxxx.conf
  • 作用

    • 指定/boot分区位置
    • 指定系统启动时所加载文件
    • 加载内核

4.2 模拟问题

1.在企业7中:删除/boot/grub2/grub.cfg文件
在这里插入图片描述
2.在企业8中:删除/boot/loader/entries/xxxxxx.conf文件
在这里插入图片描述

4.3 修复

1.grub2文件损坏后,系统未重启,还处在当前系统中,可以直接修复
①:在企业7中:grub2-mkconfig > /boot/grub2/grub.cfg
在这里插入图片描述
②:在企业8中:kernel-install add 内核版本号 内核镜像
在这里插入图片描述
2.手动引导:系统grub2文件损坏后,开机时系统启动不了,输入以下命令,手动引导,进入系统中
在这里插入图片描述
手动引导后,登录系统,还需对系统用修复命令进行修复!!!

5.内核加载

5.1 基本介绍

  • 内核加载读取文件:/boot/vmlinuz-内核版本
  • 作用
    • 设备驱动初始化
    • 只读挂载 / 设备
    • 载入初始进程systemd
    • 检测硬件设备

5.2 模拟问题

删除/boot/vmlinuz-xxxxxxx文件
在这里插入图片描述

5.3 修复

1.从光盘启动进入挽救模式
在这里插入图片描述
2.在挽救模式中执行chroot /mnt/sysimage命令
在这里插入图片描述
3.挂载镜像到/mnt文件下,安装内核
在这里插入图片描述
在这里插入图片描述
4.安装成功后,系统修复成功,输入两次eixt退出重启系统
5.在bios中设置从硬盘启动进入系统
在这里插入图片描述

6. 系统初始化镜像

6.1 基本介绍

  • 文件:/boot/initramfs-4.18.0-80.el8.x86_64.img
  • 作用:
    • 加载系统时钟
    • 加载selinux
    • 加载系统主机信息
    • 加载/etc/fstab文件中磁盘挂载策略
    • 加载磁盘配额
    • 初始化系统程序开启开机启动服务
    • 开启虚拟控制台,开启图形

6.2 模拟问题

删除系统初始化镜像文件
在这里插入图片描述

6.3 修复

①:若文件损坏后,还处在系统中,可直接执行修复命令:mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
在这里插入图片描述
②:若文件损坏后,重启系统时,启动失败,进入挽救命令,执行以上修复命令

7. 系统启动级别

7.1 基本介绍

级别解释
0(poweroff.target)关机
1(rescue.target)单用户
2(multi-user.target)无图形网络模式
3(multi-user.target)无图形网络模式
4(multi-user.target)无图形网络模式
5(grapical.target)有图形网络模式
6(reboot.target)重启

设定启动级别:
systemctl set-default + 启动级别

7.2 模拟问题

设定启动级别为6 ,系统开机陷入无限重启
在这里插入图片描述

7.3 修复

1.在开机界面按【e】进入引导文件编辑模式
2. 加入启动级别5,按ctrl +x 启动系统
在这里插入图片描述
3.开机后修改系统启动级别
在这里插入图片描述

8. 忘记超级用户密码

1.在开机界面按【e】进入引导文件编辑模式
在这里插入图片描述
2.在内核加载选项从最后删除到ro选项;更改ro 为 rw;加入rd.break参数终止系统启动,进入单用户模式
在这里插入图片描述
3.按ctrl +x 启动
4.执行chroot /sysroot,得到shell;修改密码;创建/.autorelabel文件,可重新初始化selinux
在这里插入图片描述
5.密码修改成功,可以登录超级用户

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值