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

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

  • 1. 通电
  • 2. bios初始化
  • 3. 磁盘引导
  • 4. grub2文件引导
  • 5. 内核加载
  • 6. 系统初始化镜像
  • 7. 系统启动级别
  • 8. 超级用户密码忘记

1.通电

2.bios初始化

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

3.磁盘引导

mbr=主引导记录=0磁道1扇区446

  • 作用:
    记录grub2引导文件的位置

当mbr数据丢失系统会因为找不到启动分区而停止启动

  • 问题模拟方式
    系统磁盘 /dev/nvme0n1
    dd if=/dev/zero of=/dev/nvme0n1 bs=446 count=1
    清空系统dev/nvme0n1上的mbr数据

Linux系统引导过程及引导修复_第1张图片
Linux系统引导过程及引导修复_第2张图片

  • 恢复方式:
    用光盘进入系统挽救模式
    chroot /mnt/sysimage
    grub2-install /dev//nvme0n1

    重新安装grub2到系统硬盘上
    Linux系统引导过程及引导修复_第3张图片
    Linux系统引导过程及引导修复_第4张图片
    进入挽救模式
    Linux系统引导过程及引导修复_第5张图片
    Linux系统引导过程及引导修复_第6张图片

4.grub2文件引导

rhel7:
/boot/grub2/grub.cfg

rhel8
/boot/grub2/grub.cfg
/boot/loader/entries/xxxxxxxxx.conf
Linux系统引导过程及引导修复_第7张图片
Linux系统引导过程及引导修复_第8张图片

指定/boot位置
指定系统启动时加载文件成名

  • 模拟问题:
    rhel7:
    rm -fr /boot/grub2/grub.cfg

rhel8:
rm -fr /boot/loader/entries/vmlinuz-4.18.0-80.e18.x86_64.conf
Linux系统引导过程及引导修复_第9张图片

  • 修复:
    rhel7
    grub2-mkconifg > /boot/grub2/grub.cfg
    rhel8:
    kerne-install add 内核版本号 内核镜像
    kernel-install add $(uname -r) /lib/modules/$(uname -r)/vmlinuz
    Linux系统引导过程及引导修复_第10张图片

  • 手动引导
    set root=‘hd0,msdos1’
    linux16 /vmlinuz-3.10.0-957.el7.x86_64 ro root=/dev/nvme0n1p2
    initrd16 /initramfs-4.18.0-80.el8.x86_64.img
    boot

    Linux系统引导过程及引导修复_第11张图片

5.内核加载

加载内核作用:
/boot/vmlinuz-$(uname -r)
系统初始化硬件设备
只读挂在/设备

  • 问题出现:
    rm -fr /boot/vmlinuz-$(uname -r)
    Linux系统引导过程及引导修复_第12张图片

  • 恢复:
    重装内核

进入到挽救模式
Linux系统引导过程及引导修复_第13张图片
chroot /mnt/sysimage
mount /dev/cdrom /mnt
Linux系统引导过程及引导修复_第14张图片
cd /mnt/BaseOS/Packages
rpm -ivh kernel-core-xxxxx.rpm --force

Linux系统引导过程及引导修复_第15张图片

6.系统初始化镜像

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

  • 问题出现:
    rm -fr /boot/initramfs-xxxxx.img
    Linux系统引导过程及引导修复_第16张图片
  • 恢复:
    mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
    Linux系统引导过程及引导修复_第17张图片

7.系统启动级别

序号 功能
0 关机
1 单用户
2 无图形网络模式
3 无图形网络模式
4 无图形网络模式
5 有图形网络模式
6 重启
  • 问题出现:
    systemctl set-default reboot.target
    在这里插入图片描述
  • 恢复:
    在开机选择界面按进入到引导文件编辑模式
    在内核加载选项最后加入启动级别5
    ctrl+x
    systemctl set-default graphical.target
    Linux系统引导过程及引导修复_第18张图片
    在这里插入图片描述

8.超级用户密码忘记

  • 恢复:
    1. 在开机选择界面按进入到引导文件编辑模式
    2. 在内核加载选项最后删除到ro选项
    3. 更改ro---->rw
    4. 加入rd.break参数终止系统启动进入单用户模式
    5. ctrl+x启动
    6. chroot /sysroot
    7. echo lee| passwd --stdin root
    8. touch /.autorelabel ##当/.autorelabel文件存在selinux会重新初始化
    Linux系统引导过程及引导修复_第19张图片
    Linux系统引导过程及引导修复_第20张图片

你可能感兴趣的:(Linux系统引导过程及引导修复)