【Linux学习笔记17】系统故障恢复方法大全(一)

   日期:2020-11-13     浏览:114    评论:0    
核心提示:文章目录1.通电2.bios初始化3.磁盘引导3.1.问题模拟方式/dev/sda3.2.恢复方式4.grub2文件引导5.内核加载6.7.8.忘记超户密码1.通电2.bios初始化3.磁盘引导mbr = 主引导记录 = 0磁道1扇区446 (其中只存放了c盘的位置)作用: 记录grub2 引导文件的位置,找到系统的启动分区当 mbr 数据丢失系统会因为找不到启动分区而停止启动3.1.问题模拟方式/dev/sdafdisk -l:查看系统磁盘所在位置3.2.恢复方式4.grub2文件

文章目录

  • 1.通电
  • 2.bios初始化
  • 3.磁盘引导/dev/sda
    • 3.1.问题模拟方式/dev/sda
    • 3.2.恢复方式
  • 4.grub2文件引导(1)
    • 4.1.模拟问题
    • 4.2.未重启修复方法
    • 4.3.已重启修复方法
  • 5.grub2文件引导(2)删除grub.cfg
    • 5.1.模拟问题
    • 5.2.修复方法
  • 5.内核加载
    • 5.1.模拟问题
    • 5.2.修复方法
  • 6.系统初始化镜像
    • 6.1.模拟问题·
    • 6.2.未重启的修复方法
    • 6.3.已重启的修复方法
  • 7.系统启动级别
    • 7.1.模拟问题
    • 7.2.修复方法
  • 8.忘记超户密码解决方法

fdisk -l:查看当前磁盘及分区信息
df:查看文件系统(分区)的使用情况
<实验前提前查看>

1.通电

先检查基础问题,看是否是电源问题

2.bios初始化

  • 对硬件检测
  • 初始化硬件时钟

3.磁盘引导/dev/sda

  • mbr = 主引导记录 = 0磁道1扇区446 (其中只存放了c盘的位置)

  • 作用: 记录grub2 引导文件的位置,找到系统的启动分区

  • 当 mbr 数据丢失系统会因为找不到启动分区而停止启动

3.1.问题模拟方式/dev/sda

  1. fdisk -l:查看当前磁盘及分区信息
  2. dd if=/dev/zero of=/dev/*所在 bs=446 count=1:清空系统/dev/sda上的mbr数据


  • 重启失败:

3.2.恢复方式

  1. 关机
  2. 添加光盘,设定为光盘驱动


  3. 开机===>进入挽救模式



  1. 重新安装grub2到系统硬盘上
    1. chroot /mnt/sysimage
    2. grub2-install /dev/XXX
    3. exit
    4. exit
    <挽救模式下的 / 是光盘的 /,硬盘的 / 会被挂载到当前环境光盘 /mnt/sysimages上>

  1. 关机===>切换到硬盘驱动 ===>开机,挽救成功!!!

4.grub2文件引导(1)

4.1.模拟问题

rm -fr /boot/loader/entries/*

df:查看文件系统(分区)的使用情况

uname -r:查看当前的kernel版本信息

#kernel-install add 内核版本号 内核镜像
kernel-install add $(uname -r) /boot/vmlinuz-4.18.0-80.el8.x86_64

4.2.未重启修复方法

  1. cp /usr/lib/modules/4.18.0-80.el8.x86_64/bls.conf /boot/
  2. kernel-install add $(uname -r) /boot/vmlinuz-4.18.0-80.el8.x86_64

4.3.已重启修复方法

  • 删除后重启系统:
    1. rm -fr /boot/loader/entries/*
    2. reboot
  1. grub引导===>boot开机
    1. set root=‘hd0,msdos1’
    2. linux16 /vmlinuz-4.18.0-80.el8.x86_64 ro root=/dev/XXXdf查看到根下对应分区为/dev/sda3)
    3. initrd /initramfs-4.18.0-80.el8.x86_64.img
    4. boot

  1. 1. cp /usr/lib/modules/4.18.0-80.el8.x86_64/bls.conf /boot/(若/boot/下有bls.conf则不用复制)
    2. kernel-install add $(uname -r) /boot/vmlinuz-4.18.0-80.el8.x86_64

5.grub2文件引导(2)删除grub.cfg

5.1.模拟问题

rm -fr /boot/grub2/grub.cfg
reboot

5.2.修复方法

  1. cp /usr/lib/modules/4.18.0-193.el8.x86_64/bls.conf /boot/(若/boot/下有bls.conf则不用复制)
    reboot
  2. grub引导
    1. set root=‘hd0,msdos1’
    2. linux16 /vmlinuz-4.18.0-80.el8.x86_64 ro root=/dev/XXXdf查看到根下对应分区为/dev/sda3)
    3. initrd /initramfs-4.18.0-80.el8.x86_64.img
    4. boot

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

可以发现/boot/grub2/grub.cfg找回!!!

5.内核加载

  • 加载内核作用:/boot/vmlinuz-$(uname -r)
  • 系统初始化硬件设备
  • 只读挂载设备

5.1.模拟问题

rm -fr /boot/vmlinuz-4.18.0-80.el8.x86_64


出现以下情况:

5.2.修复方法

  1. 关机===>设定光盘驱动

  1. 挽救模式
    1. chroot /mnt/sysimage
    2. cp /usr/lib/modules/4.18.0-80.el8.x86_64/vmlinuz /boot/vmlinuz-$(unmae -r)
    3. exit
    4. exit




  1. 关机===>设定硬盘驱动===>开机成功!!!

6.系统初始化镜像

6.1.模拟问题·

rm -fr /boot/initramfs-4.18.0-80.el8.x86_64.img

  • 重启出现的问题:

6.2.未重启的修复方法

mkinitrd /boot/initramfs-4.18.0-193.el8.x86_64.img 4.18.0-80.el8.x86_64

6.3.已重启的修复方法

  1. 关机===>设定光盘驱动


  1. 进入挽救模式
    1. chroot /mnt/sysimage
    2. mkinitrd /boot/initramfs-4.18.0-193.el8.x86_64.img 4.18.0-80.el8.x86_64
    3. exit
    4. exit

  1. 关机===>设定硬盘驱动===>开机===>查看初始化镜像


7.系统启动级别

0 关机
1 单用户
2 无图形网络模式
3 无图形网络模式
4 无图形网络模式
5 有图形网络模式
6 重启

7.1.模拟问题

  • 设定启动级别为重启
    systemctl set-default reboot.target
    systemctl set-default runlevel6
  • reboot后进入无限循环重启

7.2.修复方法

  1. 按<e>进入到引导文件编辑模式
    —> 在quit后写入5
    —>按<ctrl> + <X>


  1. 设定有图形模式:
    systemctl set-default graphical.target

8.忘记超户密码解决方法

  1. reboot
    —>按<e>进入到引导文件编辑模式
    —>将ro改为rw
    —>写入rd.break
    —>按<ctrl>+<X>

  2. 1. chroot /sysroot/
    2. echo XXX | passwd --stdin root:修改root密码为XXX
    3. touch /.autorelabel :当 / .autorelabel 文件存在 selinux 会重新初始化

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服