Linux之系统排错

本文详细介绍了Linux系统遇到MBR主导分区损坏、文件引导损坏、内核程序丢失及初始化镜像文件丢失等问题时的修复方法。包括使用GRUB2修复MBR,重建grub.cfg文件,恢复内核程序vmlinuz及初始化镜像initramfs,并处理/boot分区被删除和开机启动级别被篡改的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MBR主导分区损坏

模拟问题:dd if=/dev/zero of=/dev/vda bs=446 count=1
在这里插入图片描述
当你重启电脑后会出现以下错误,系统无法正常开机
在这里插入图片描述
前提条件----------------必须要有一个与系统相同的镜像
解决方案
(1)真机执行virt-manager,选择grub2出现错误的虚拟机,并关闭虚拟机;

在这里插入图片描述

(2)点击灯泡,根据虚拟机版本添加光驱(如7.3的系统光驱为7.3版本的镜像)

在这里插入图片描述

(3)点击Boot opations,将IDE CDROM 调到第一个,以便系统启动时第一个识别IIDE CDROM1; ##注意:光驱启动
在这里插入图片描述

(4)打开虚拟机,选择修复选项
在这里插入图片描述
在这里插入图片描述
(5)进入系统后,进行过下面的步骤
进入真实环境:chroot /mnt/sysimage
查看boot程序所在分区:df
执行:grub2-install /dev/vda
两次exit重启系统
在这里插入图片描述

(5)关闭虚拟机点击灯泡,选择Boot opations将IDE CDROM1调到最后一个,使系统重启时第一个识别
在这里插入图片描述
重新打开系统并打开图形界面,就可启动成功

文件引导损坏——/boot/grub2/grub.cfg

boot分区的引导文件 /boot/grub2/grub.cfg
在这里插入图片描述
/boot/grub2/grub.cfg.此文件属于 Linux 系统开启的自动引导文件,通过此文可以自动完成对系统根目录的挂载,linux 内核的初始化和初始化程序的引导,此文件若是缺失,系统则无法自动开启,需要进行手动引导。

模拟问题:/boot/grub2/grub.cfg文件缺失
第一种情况:没有重启:grub2-mkconfig > /boot/grub2/grub.cfg
在这里插入图片描述

第二种情况:/boot/grub2/grub.cfg文件缺失,重启后:
(1)设定root用户读取第一个磁盘的第一个分区 : set root=‘hd0,msdos1’
(2)手动进行内核引导 ,将根目录只读挂在到/dev/vda1:linux16 /boot/vmlinuz-3.10.0-123.el7.x86_64 ro root=/dev/vda1
(3)生成自动引导初始化程序 :initrd16 /boot/initramfs-3.10.0-123.el7.x86_64.img
(4)启动机器
在这里插入图片描述
(5)打开虚拟机,在虚拟机里进行恢复:grub2-mkconfig > /boot/grub2/grub.cfg
在这里插入图片描述

内核程序被删除——vmlinuz-3.10.0-123.el7.x86_64

若是系统的 vmlinuz-3.10.0-123.el7.x86_64 缺失,系统因为无法进行下一步的开机引导而不能启动。

模拟问题:rm -rf /boot/vmlinuz-3.10.0-123.el7.x86_64
重启服务后出现下面的问题
在这里插入图片描述

解决问题:
(1)进入修复模式且进入真正的系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值