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

系统启动
1.通电
2.bios初始化
对硬件检测 ,初始化硬件时钟,激活硬件;
3.磁盘引导
mbr=主引导记录=0磁道1扇区446
作用: 记录grub2引导文件的位置
当mbr数据丢失系统会因为找不到启动分区而停止启动
3.1问题模拟
系统磁盘/dev/nvme0n1
rhel8 :

dd if=/dev/zero of=/dev/nvme0n1  bs=446 count=1 清空系统dev/nvme0n1上的mbr数据

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.2恢复方式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
4.grub2文件引导

 rhel7: 
 /boot/grub2/grub.cfg
 rhel8:
 /boot/grub2/grub.cfg 
/boot/loader/entries/xxxxxxxxx.conf  此文件名称会更换,自动生成
指定/boot/位置,指定系统启动加载的文件

rhel7:
在这里插入图片描述
rhel8:

[root@rhel8_node1 boot]# cd grub2/
[root@rhel8_node1 grub2]# ls
device.map  fonts  grub.cfg  grubenv  i386-pc
[root@rhel8_node1 grub2]# vim grub.cfg   只是指定了启动硬盘分区

在这里插入图片描述

[root@rhel8_node1 boot]# cd loader/
[root@rhel8_node1 loader]# ls
entries
[root@rhel8_node1 loader]# cd entries/
[root@rhel8_node1 entries]# ls  加载内核镜像文件
fda8620f008a41339aa90bec15aa56a0-0-rescue.conf  fda8620f008a41339aa90bec15aa56a0-4.18.0-80.el8.x86_64.conf

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

4.1模拟问题

rhel8:

[root@rhel8_node1 entries]# ls
fda8620f008a41339aa90bec15aa56a0-0-rescue.conf  fda8620f008a41339aa90bec15aa56a0-4.18.0-80.el8.x86_64.conf
[root@rhel8_node1 entries]# rm -rf *  删除文件
[root@rhel8_node1 entries]# reboot    重启电脑

修复:
在这里插入图片描述

在这里插入图片描述

rhel7:
模拟问题
rm -fr /boot/grub2/grub.cfg 
手动引导与rhel8一致
修复:  grub2-mkconifg > /boot/grub2/grub.cfg

5.内核加载
rhel7与rhel8相同
加载内核作用:
/boot/vmlinuz-$(uname -r)
1.系统初始化硬件设备
2.只读挂在/设备
5.1 模拟问题
在这里插入图片描述
在这里插入图片描述
5.2 修复问题
进入挽救模式

 chroot /mnt/sysimage
 mount /dev/cdrom /mnt
 rpm -ivh kernel-core-4.18.0-80.el8.x86_64.rpm --force 
 两次exit重启

在这里插入图片描述
在这里插入图片描述
6.系统初始化镜像

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

6.1模拟问题
在这里插入图片描述
在这里插入图片描述
6.2修复问题

chroot /mnt/sysimage
mkinitrd /boot/initramfs-$(uname -r ).img $(uname -r)

在这里插入图片描述
7.系统启动级别

0 关机 
1 单用户 
2 无图形网络模式 
3 无图形网络模式 
4 无图形网络模式 
5 有图形网络模式 
6 重启

7.1模拟问题

temctl set-default reboot.target  无线重启
 

在这里插入图片描述
7.2修复问题
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
8.超级用户密码忘记

8.1若忘记超级用户登录密码解决方法如下
1.在开机选择界面按<e>进入到引导文件编辑模式
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会重新初始化

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

发布了46 篇原创文章 · 获赞 6 · 访问量 1340

猜你喜欢

转载自blog.csdn.net/qq_46089299/article/details/104573175