linux基础篇(十九):几种常见的系统排错

mbr被覆盖

当mbr(指定系统引导分区的位置)被覆盖之后,系统不能重启
1:dd if=/dev/zero of=/dev/vda bs=446 count=1 ##执行此命令后mbr将会被覆盖!!! 446为mbr所占字节
在这里插入图片描述
2:reboot (重启之后会失败),会一直停留在下面这个界面
在这里插入图片描述
关掉虚拟机 #####必须关掉虚拟机后在执行以下操作
真机里面 virt-manager
4:添加光盘设备
在这里插入图片描述
在这里插入图片描述
5:Boot Options 选中光盘并拉到第一行
在这里插入图片描述
6:Apply 后开机选中所出现的第三行回车然后选中第二行回车####此步骤为用光盘镜像进入挽救模式,下面排错中也会使用到此方法
在这里插入图片描述
在这里插入图片描述
7:在出现的窗口下按提示操作之后会打开一个shell
在这里插入图片描述
8:chroot /mnt/sysimage #####此命令为进入当前模式的根目录下
在这里插入图片描述
9:grup2-install /dev/vda
在这里插入图片描述
10:两次exit后系统会启动成功,此时需要将选中的光盘镜像取消才能进入系统
在这里插入图片描述
####记得先关机后,将光盘镜像取消然后再开机

删除启动配置文件grub.cfg

1:rm -fr /boot/grub2/grub.cfg ##删掉这个文件,系统在启动时需要手动引导进入
在这里插入图片描述
2:reboot后会出现如下界面
在这里插入图片描述
此时需要手动引导才能进入系统
3:在出现的窗口输入 set root=‘hd0,msdos1’
4:linux16 /boot/vmlinuz-3.10.0-123.el7.x86_64 ro root=/dev/vda1
5:initrd16 /boot/initramfs-3.10.0-123.el7.x86_64.img
在这里插入图片描述
其余内容使用tab补全时的多余内容,可以忽略
6:boot #####注意不要写成reboot,否则又要从新引导
7:进入后 grub2-mkconfig > /boot/grub2/grub.cfg 如果不导入,则在下一次重启又要进行手动引导
在这里插入图片描述

内核文件被删除

1、rm -fr /boot/vmlinuz-3.10.0-123.el7.x86_64
vmlinux是未压缩的内核,vmlinuz是vmlinux的压缩文件。
vmlinux-3.10.0-123是未压缩内核,vmlinuz-3.10.0-123是vmlinux-3.10.0-123的压缩文件。
在这里插入图片描述
(1):误删除后还未重新启动
找到系统中的镜像,打开后进入Packages,找到kernel-3.10.0-123.el7.x86_64.rpm,将此rpm包移动到桌面
在这里插入图片描述
分解系统启动的rpm包,在分解出的boot目录中找到丢失文件,将它复制到/boot/中
分解:rpm2cpio kernel-3.10.0-123.el7.x86_64.rpm | cpio -id
在这里插入图片描述
复制:cp boot/vmlinuz-3.10.0-123.el7.x86_64 /boot/
在这里插入图片描述
(2):误删除后又将系统重新启动(启动会失败)
在这里插入图片描述
在这里插入图片描述
处理步骤:
1:在真机中向虚拟机添加一个光盘镜像
2:用镜像打开虚拟机进入挽救模式####进入挽救模式在第一个排错中有详细步骤,这里略过
3:找到光盘所挂载的目录,在里面找到Packages,进入Packages,将系统的rpm包复制到根(此时系统的根为/dev/vda1所挂载的目录)下的/mnt目录中
在这里插入图片描述
4:chroot /mnt/sysimage
5:分解: rpm2cpio /mnt/kernel-3.10… | cpio -id
在这里插入图片描述
6:复制:cp boot/vmlinuz-3… /boot
在这里插入图片描述
7:两次exit####需要将选中的光盘镜像取消并下移

启动级别被修改导致的开机异常

1:cd /etc/systemd (系统初始化程序的目录)
2:cd system
3:cd multi-user.target.wants ----->全是链接文件,这些文件都连接在对应的服务
##############前面三项为查看系统启动级别的链接文件###############
4:systemctl set-default shutdown.target ###将系统的默认级别设置为关机(结果为开机直接死机或者开机后直接关机)
在这里插入图片描述
5:解决办法:开机后在读秒界面按上下键停止读秒,按E后找到内核版本一行,光标移动到最后 添加默认级别 5 > 进入图形界面 ----> ctrl X 则会进入系统
在这里插入图片描述
6:进入图形界面后,将启动级别改回即可 systemctl set-default graphical.target
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/gd0306/article/details/83410517
今日推荐