15.完坏系统之linux系统修复引导过程及引导修复

一、磁盘引导

mbr=主引导记录=0磁道1扇区446
作用:记录grub2引导文件的位置,当mbr数据丢失系统会因为找不到启动分区而停止启动
问题模拟方式
系统磁盘/dev/sda

dd if=/dev/zero of=/dev/vda bs=446 count=1 #搞坏系统

恢复方式:
未关机情况下:直接在shell执行

grub2-install /dev/vda

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

在这里插入图片描述
关机重启情况下: 切换为光盘优先启动
退出系统,切换为光盘优先启动
用光盘进入系统挽救模式Troubleshooting
Rescue a Red Hat Enterprise Linux system #选择进入挽救模式

chroot /mnt/sysimage
grub2-install /dev/vda #恢复磁盘引导
vim /etc/selinux/config

退出系统 切换为硬盘优先启动
修复成功
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

二、grub文件引导

在rhel8下

cd /boot/loader/entries/     
ls                                  #查看目录下文件
/boot/grub2/grub.cfg                #指定/boot位置
/boot/loader/entries/xxxxxxxxx.conf #指定系统启动时加载文件成名

模拟问题1:
rhel8:

rm -fr /boot/loader/entries/*       #删除目录下文件

在这里插入图片描述
重新启动出现如下界面
在这里插入图片描述手动引导

set root='hd0,msdos1'
linux16 /vmlinuz-4.18.0-193.el8.x86_64 ro root=/dev/vda3
initrd16 /initramfs-4.18.0-80.el8.x86_64.img
boot      #继续启动系统

在这里插入图片描述
成功进入系统后
切换在超级用户下:恢复引导文件

find / -name bls.conf  #查找路径
cp /usr/lib/modules/4.18.0-193.el8.x86_64/bls.conf /boot/ #复制到boot下
uname -r               #查询内核版本号
kernel-install  add     内核版本号          内核镜像
kernel-install add $(uname -r命令下的“版本号识别”) /boot/vmlinuz-4.18.0-193.el8.x86_64  #修复引导文件
修复完成
退出系统 切换为硬盘优先启动

在这里插入图片描述在这里插入图片描述修复成功

三、内核加载

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

uname -r #查询内核号

在这里插入图片描述

问题出现:误删除了文件/boot/vmlinuz-$(uname -r) #内核文件硬盘引导

rm -fr /boot/vmlinuz-$(uname -r)
在这里插入图片描述
恢复:复制系统中usr下的内核文件到/boot中即可
未关机情况下:直接在shell执行

cp /usr/lib/modules/$(uname -r)/vmlinuz /boot/vmlinuz-$(uname -r)

在这里插入图片描述
关机重启情况下: 切换为光盘优先启动
用光盘进入系统挽救模式Troubleshooting

chroot /mnt/sysimage
cp /usr/lib/modules/$(uname -r)/vmlinuz /boot/vmlinuz-$(uname -r)
关机切换硬盘启动,完成修复

在这里插入图片描述

四、系统初始化镜像

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

rm -fr /boot/initramfs-xxxxx.img    #删除了镜像
恢复:未关机情况下:直接在shell执行
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)

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

关机重启情况下:用光盘进入系统``挽救模式Troubleshooting``
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)

在这里插入图片描述

五、系统启动级别

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

问题出现:

systemctl set-default reboot.target #系统无法正常启动,无限引导循环

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

在开机选择界面按<e>进入到引导文件编辑模式
在内核加载选项最后加入启动级别5
ctrl+x
系统正常启动
在这里插入图片描述
启动成功后输入

systemctl set-default graphical.target

在这里插入图片描述

系统恢复正常启动

六、超级用户密码忘记

恢复:
1.在开机选择界面按进入到引导文件编辑模式
在这里插入图片描述2.在内核加载选项最后删除到ro选项
3.更改ro---->rw rd.break
4.加入rd.break参数终止系统启动进入单用户模式
在这里插入图片描述在这里插入图片描述
5.ctrl+x启动
输入命令修改密码

chroot /sysroot
echo jwl| passwd --stdin root  #修改超级用户密码为jwl
touch /.autorelabel  #当/.autorelabel文件存在selinux会重新初始化cp kernel-core-4.18.0-80.el8.x86_64.rpm /mnt/

在这里插入图片描述
重新启动系统输入修改的新密码
在这里插入图片描述超级用户密码修改完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值