Linux系统排错(常见)

Linux操作系统的开机过程:从BIOS开始,然后进入Boot Loader,再加载系统内核,然后内核进行初始化,最后启动初始化进程。

更改root用户密码

开机按上下键停止读秒
按 ’e‘进入编辑模式
上下键 到linux16 /boot/vmlinuz-xxxxxxxxxxxxxxxx删除该行ro后的内容 改ro为rw rd.break
启动系统 ctrl+x
界面停止不动时按回车,依次输入以下内容
chroot /sysroot/	
passwd
touch /.autorelabel
exit

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

磁盘引导阶段 mbr主引导记录的恢复

hostnamectl	查看系统版本
fdisk -l	查看主引导分区,*在哪,mbr就在哪
dd if=/dev/zero of=/dev/vda bs=446 count=1	问题模拟
注意,导入的空字节只能是446,再大会把磁盘分区覆盖掉
重启动虚拟机,发现报错
添加光盘启动,调整光盘启动顺序
再次重启虚拟机
进入光盘启动恢复界面
32111
chroot /mnt/sysimage/		改变程序执行是所参考的根目录位置
##grub2-install			启动分区所在硬盘
grub2-install /dev/vda		启动分区所在硬盘
将本地磁盘启动调到前面
重启

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

文件引导阶段

1)引导文件丢失

/boot/geub2/grub.cfg	引导文件
rm -rf /boot/grub2/grub.cfg	模拟问题

当系统没有重启时,
grub2-mkconfig > /boot/grub2/grub.cfg	恢复引导文件
当系统已经重启时,
df	先查看boot在哪?
grub > set root='hd0,msdos1'		此位置不是固定的,位置指定/boot所在的分区,刚才用df命令查看过
grub > linux16 /boot/vmlinuz-3.10.0-123.el7.x86_64 ro root=/dev/vda1	引导内核
grub > initrd16 /boot/initramfs-3.10.0-123.el7.x86_64.img	引导系统初始化镜像
grub > boot	执行引导
以上操作可以使系统正常启动,但是是临时的,所以进入系统后还是需要执行下面的命令
grub2-mkconfig > /boot/grub2/grub.cfg	恢复引导文件

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2)内核文件丢失

rm -rf /boot/vmlinuz-3.10.0-123.el7.x86_64	模拟问题

光盘启动,进入到挽救模式,32111
df	查看虚拟光盘
chroot /mnt/sysimage/		改变程序执行时所参考的根目录位置
mkdir redhat	新建挂载点
mount /dev/sr0 /redhat/		挂载到redhat下
cd /redhat/
ls
cd Packages/	进入之后不要ls
cp kernel-3.10.0-123.el7.x86_64.rmp /mnt
cd /mnt
ls
rpm2cpio kernel-3.10.0-123.el7.x86_64.rmp | cpio -id
ls
cd boot/
ls
cp vmlinuz-3.10.0-123.el7.x86_64 /boot/
更改磁盘驱动为第一

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

系统初始化镜像文件丢失

rm -rf /boot/initramfs-3.10.0-123.el7.x86_64.img

当系统没有重启时,
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)

当系统已经重启时,
光盘启动,进入到挽救模式,32111
chroot /mnt/sysimage/		改变程序执行时所参考的根目录位置
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

当/boot分区被删掉后

进入到挽救模式
chroot /mnt/sysimage
mkdir /boot
grub2-install /dev/vda
mount /dev/cdrom /mnt
rpm -ivh /mnt/Packages/kernel-3.10.0-123.el7.x86_64.rpm --force
grub2-mkconifg > /boot/grub2/grub.cfg

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

当开机启动级别被篡改

错误形成
systemctl set-default reboot.target

解决
1.开机按上下键停止读秒
2.按“e”进入编辑模式
3.选择内核启动行
linux16 /vmlinuz-XXXXX ro XXXXXXXXXXXXXXX	改变为:
linux16 /vmlinuz-XXXXX ro XXXXXXXXXXXXXXX	5
4.启动系统
ctrl + x
5.重新设定启动
systemctl set-default graphical.target

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43287982/article/details/84037232
今日推荐