Linux学习20:Linux系统引导修复方案

目录:

      • 1.Linux的引导过程及mbr引导记录的修复
      • 2.自动引导文件丢失解决方案
      • 3.内核丢失的解决方案
      • 4.系统初始化镜像文件丢失解决方案
      • 5.系统启动级别的修复及root用户密码破解方案
        • 5.1系统启动级别的修复
        • 5.2root用户密码破解方案


1.Linux的引导过程及mbr引导记录的修复

<系统引导过程>
Linux学习20:Linux系统引导修复方案_第1张图片

基本输入/输出系统(BIOS)是内置标准x86/x86-64硬件的固定接口,检测硬件状况

MBR的作用是为了记录/boot目录所在分区位置
磁盘的0磁道1扇区的前446字节
<实验准备>

Vim /etc/sysconfig/selinux    ## 关闭selinux 
dd if=/dev/zero of=/dev/vda bs=446 count=1  ##从无线空设备中截取446字节 覆盖掉mbr的446字节
reboot

<解决方法>
原理
Linux学习20:Linux系统引导修复方案_第2张图片
将没有mbr的损坏系统挂载到光盘下的/mnt/sysimage进行挽救
在这里插入图片描述
Linux学习20:Linux系统引导修复方案_第3张图片
Linux学习20:Linux系统引导修复方案_第4张图片
Linux学习20:Linux系统引导修复方案_第5张图片
<解决方法>

chroot /mnt/sysimages
grub2-install /dev/vda    ##启动分区所在硬盘

Linux学习20:Linux系统引导修复方案_第6张图片
Linux学习20:Linux系统引导修复方案_第7张图片
Linux学习20:Linux系统引导修复方案_第8张图片
Linux学习20:Linux系统引导修复方案_第9张图片
Linux学习20:Linux系统引导修复方案_第10张图片
Linux学习20:Linux系统引导修复方案_第11张图片
Linux学习20:Linux系统引导修复方案_第12张图片
Linux学习20:Linux系统引导修复方案_第13张图片
Linux学习20:Linux系统引导修复方案_第14张图片


2.自动引导文件丢失解决方案

<实验准备>

vim grub.cfg		##启动页面所在目录
查看//boot所在硬盘
rm -fr grub.cfg  	##删除grub.cfg
reboot

Linux学习20:Linux系统引导修复方案_第15张图片
Linux学习20:Linux系统引导修复方案_第16张图片
Linux学习20:Linux系统引导修复方案_第17张图片
Linux学习20:Linux系统引导修复方案_第18张图片
Linux学习20:Linux系统引导修复方案_第19张图片
<解决方法>

Set root=’hd0,msdos1’  ##此位置时不固定的,位置指定/root所在分区
Linux16 /vmlinuz-3.10.0-514.el7.x86_64 ro root=/dev/vda3 	##跟分区的设备名称
Initrd16 /initramfs-3.10.0-(tab补齐).img
Boot  启动  

Linux学习20:Linux系统引导修复方案_第20张图片
Linux学习20:Linux系统引导修复方案_第21张图片

以上操作可以时系统正常启动,但是临时的,所以进入系统后还需要执行
grub2-mkconfig > /boot/grub2/grub.cfg 	##将文件恢复回原来的位置
vim grub.cfg  	##查看文件恢复成功

Linux学习20:Linux系统引导修复方案_第22张图片
Linux学习20:Linux系统引导修复方案_第23张图片


3.内核丢失的解决方案

<实验准备>

rm -fr /boot/vmlinuz-3.10.0-123.el7.x86_64
reboot

Linux学习20:Linux系统引导修复方案_第24张图片
<解决方法>

从镜像启动
Chroot /mnt/sysimage
Mount /dev/cdrom /media
Cd /media/Packages
Cp kernel-3.10.0-123.el7.x86_64.rpm /mnt
Cd /mnt
Rpm2cpio kernel-3.10.0-123.el7.x86_64.rpm |cpio -id
Cd boot/    查看是否有vmlinuz-3.10.0-123.el7.x86_64
Cp vmlinuz-3.10.0-123.el7.x86_64 /boot/

Exit
Exit
改为从disk启动,可以进入

Linux学习20:Linux系统引导修复方案_第25张图片
Linux学习20:Linux系统引导修复方案_第26张图片
Linux学习20:Linux系统引导修复方案_第27张图片
Linux学习20:Linux系统引导修复方案_第28张图片
Linux学习20:Linux系统引导修复方案_第29张图片
Linux学习20:Linux系统引导修复方案_第30张图片
Linux学习20:Linux系统引导修复方案_第31张图片
Linux学习20:Linux系统引导修复方案_第32张图片


4.系统初始化镜像文件丢失解决方案

<实验准备>
Linux学习20:Linux系统引导修复方案_第33张图片
<解决方法>

没有重启直接执行命令,重启之后进入挽救模式执行命令
mkinitrd /boot/initramfs-$(umane -r).img $(uname -r)

Linux学习20:Linux系统引导修复方案_第34张图片
Linux学习20:Linux系统引导修复方案_第35张图片
Linux学习20:Linux系统引导修复方案_第36张图片
Linux学习20:Linux系统引导修复方案_第37张图片


5.系统启动级别的修复及root用户密码破解方案

5.1系统启动级别的修复

<实验准备>

systemctl set-default reboot.target		##进入开机重启的循环中

Linux学习20:Linux系统引导修复方案_第38张图片
<解决方法>

1.开机按上下健停止读秒
2.按E进入编辑模式
3.选择内核启动行
Linux16 /vmlinuz-xxxxx ro xxxx 改为:
Linux16 /vmlinuz-xxxxx ro xxxx 5		##进入指定级别54.启动系统
Ctrl+x
5.重新设定启动
Systemctl set-default graphical.target

Linux学习20:Linux系统引导修复方案_第39张图片
Linux学习20:Linux系统引导修复方案_第40张图片
Linux学习20:Linux系统引导修复方案_第41张图片

5.2root用户密码破解方案

1.开机按上下健停止读秒
2.按E进入编辑模式
3.选择内核启动行
Linux16 /vmlinuz-xxxxx ro xxxx 改为:
Linux16 /vmlinuz-xxxxx rw rd.break  ##在内核启动完成后终止系统初始化程序的执行
4.启动系统 ctrl+x 
Chroot /sysroot
Echo westos |passwd --stdin root  
Touch /.autorelabel   ##重新初始化selinux,当selinux未开启时不需要操作

Linux学习20:Linux系统引导修复方案_第42张图片
Linux学习20:Linux系统引导修复方案_第43张图片

你可能感兴趣的:(运维)