热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux系统排错与恢复

系统引导过程概述系统常见故障恢复1.硬盘引导阶段mbr主引导记录恢复模拟问题:ddifdevzeroofdevvdabs446count1会出现进不去系统的问题必

系统引导过程概述


系统常见故障恢复

1.硬盘引导阶段 mbr主引导记录恢复
模拟问题:dd if=/dev/zero of=/dev/vda bs=446 count=1
会出现进不去系统的问题

必须是在selinux是disabled的情况下才能输入dd if=/dev/zero of=/dev/vda bs=446 count=1

之后再把selinux改回到enforcing 状态,重启查看效果


fdisk -l出现设备后跟*为有mbr的设备,所以of=/dev/vda


解决方式:手动引导第一块硬盘的第一个分区。
步骤:关闭虚拟机,并给虚拟机添加光驱,将开机启动方式改为光驱启动优先,进入挽救模式:

进行恢复:

1
chroot /mnt/sysimage
df
grub2-install 启动分区boot所在硬盘
grub2-install /dev/vda
exit
exit

完成后关闭虚拟机,取消光驱启动,改为默认的硬盘启动即可

启动成功

2.文件引导阶段

模拟问题:引导文件丢失:/boot/grub2/grub.cfg
丢失此文件时引导过程无法完成,系统启动失败

1:在没有重启情况下 ,执行 
grub2-mkconfig > /boot/grub2/grub.cfg 
前者可以生成此文件,然后倒入 

grub2-mkconfig > /boot/grub2/grub.cfg

 

2:当重启后,画面变成grub> 
此时需要开机引导

grub > set root='hd0,msdos1' 此位置不固定,位置指向/boot所在分区
grub > linux16 /vmlinuz-3.10.0-514.el7.x86_64 ro root=/dev/mapper/rhel-root 根分区的设备名称
grub > initrd16 /initramfs-3.10.0-514.el7.x86_64.img
grub > boot

以上操作可以使系统正常启动,但是是临时的,grub2.cfg文件还没恢复,所以进入系统后还是需要执行:grub2-mkconfig > /boot/grub2/grub.cfg

内核文件丢失

模拟问题:rm -fr /boot/vmlinuz-3.10.0-514.el7.x86_64

解决办法:进入挽救模式

完成后关闭虚拟机,将开机方式设置为硬盘启动,再正常开机就行

启动成功

系统初始化镜像文件丢失
模拟问题:rm -fr /boot/initramfs-3.10.0-514.el7.x86_64.img

解决办法:当系统没有重启时

mkinitrd /boot/initramfs-$(uname -r).img $(uname -r) uname -r 查看内核版本 $()会优先执行括号内的指令

当系统重启后,发现无法登陆:

进入挽救模式

完成后关闭虚拟机,将开机方式设置为硬盘启动,再正常开机就行

启动成功

当开机启动级别被篡改

我们重启后,发现系统会不断重启

解决:

登陆的时候在这里按上下键停止读秒

修改内容

重启系统,发现可以正常登陆

如果忘记了登陆密码,怎么解决

登陆的时候在这里按上下键停止读秒

修改内容

ctrl + x启动系统,写入以下命令

chroot /sysroot/
echo redhat | passwd --stdin root
touch /.autorelabel
exit
exit

修改密码成功,可以用新密码登陆系统


推荐阅读
author-avatar
手机用户2602922607
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有