linux--系统排错

恢复系统单元
系统引导
grub2磁盘引导阶段
1.损坏446字节
vim /etc/sysconfig/selinux ##关闭火墙,加快开机启动
df ##有*的就是系统所在分区
dd if=/dev/zero of=/dev/vda bs=446 count=1 ##将空字节给 /dev/vda 的前446个字节 ##损坏mbr引导文件
reboot
将光驱 IDE CDROM1 放在开机启动项第一位
reboot
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
Troubleshooting
在这里插入图片描述
Rescue…##进入挽救模式
在这里插入图片描述
在这里插入图片描述
是硬盘挂载在 /mnt/sysimage下
chroot /mnt/sysimage ##切根
df ##检测
grub2-install /dev/vda ##修补一些损坏的引导
将硬盘DISK 放在开机启动项第一位
两次exit (手动重启也可以)
在这里插入图片描述更改回从磁盘启动。
重新启动系统。
在这里插入图片描述

2.文件引导阶段
引导文件丢失:

rm -fr /boot/grub2/grub.cfg
当系统没有重新启动时
grub2-mkconfig > /boot/grub2/grub.cfg ##修补文件,grub2-mkconfig输出的就是/boot/grub2/grub.cfg的文件内容

自己去写引导:
在这里插入图片描述

set root=’hd0,msdos1’ ##找boot分区的挂载点##第一块硬盘的第个分区,此位置时不固定的,位置指定/boot所在分区(DF)
linux16 /vmlinuz-3.10.0-514.e17.x86_64 ro root=/dev/vda3#跟分区设备名称,#系统内核文件
initrd16 /initramfs-3.10.0-514.e17.x86_64.img ##系统初始化镜像文件 ##在/boot在
boot##进入boot
在这里插入图片描述
在这里插入图片描述
以上操作可以使系统正常启动,进入系统后还需要执行

grub2-mkconfig > /boot/grub2/grub.cfg ##
在这里插入图片描述

内核引导阶段

内核文件丢失
rm -fr /boot/vmlinuz-3.10.0-514.e17.x86_64 ##删除系统内核文件
reboot
在这里插入图片描述
进入到挽救模式
chroot /mnt/sysiamge ##切根
mount /dev/cdrom /media ##镜像挂载
cd /Packages
cp kernel-3.10.0-514.e17.x86_64.rpm /mnt
cd /mnt
rpm2cpio kernel-3.10.0-514.e17.x86_64.rpm | cpio -id ##分解##把要的东西从这个安装包中扒出来
cd boot ##cd /mnt/boot
cp vmlinuz-3.10.0-514.e17.x86_64 /boot
exit
exit
在这里插入图片描述
在这里插入图片描述
系统初始化镜像文件丢失

rm -rf /boot/initramfs-3.10.0-514.e17.x86_64.img
uname -r ##系统当前版本

当系统没有重新启动时:

mkinitrd /boot/initramfs-(uname−r).img(uname -r) ##initramfs是/boot/grub2/grub.cfg文件已经写好的,不能更改

当系统重新启动后:

进入到挽救模式
chroot /mnt/sysiamge ##使用超级用户
mkinitrd /boot/initramfs-(uname−r).img(uname -r)
在这里插入图片描述
重启
在这里插入图片描述

如果/boot分区被删掉后 (内核也被删了)
进入到挽救模式以后
chroot /mnt/sysimage
grub2-install /dev/vda ##安装引导
mount /dev/cdrom /mnt ##mount /dev/sr0 /mnt
rpm -ivh /mnt/Packages/kernel-3.10.0-123.e17.x86_64.rpm ##内核被删了,需要重新安装##时间较长
grub2-mkconig > /boot/grub2/grub.cfg
重启

当开机启动级别被篡改

设定启动级别
systemctl set-default + 启动级别
/etc/systemd/system/default.target
在这里插入图片描述

错误形成

方法一
rm -rf /etc/systemd/system/default.target
ln -s /usr/lib/systemd/system/poweroff.target /etc/systemd/system/default.target
方法二
systemctl set-default reboot.target
1.开机按上下键
2.按”E“进入编辑模式
3.选择内核启动行
linux16 /vmlinuz-xxxxxxxx ro xxxxxxxxx 改变为:
linux16 /vmlinuz-xxxxxxxx ro xxxxxxxxx 5
4.ctrl +x
在这里插入图片描述
在这里插入图片描述

忘记超级用户密码

1.开机按上下键
2.按”E“进入编辑模式
3.选择内核启动行
linux16 /vmlinuz-xxxxxxxx ro xxxxxxxxx 改变为:
linux16 /vmlinuz-xxxxxxxx rw rd.break
4.ctrl +x
在这里插入图片描述
5.chroot /sysroot
6.passwd
7.touch /.autorelabel
8.exit
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值