linux系统引导过程及引导修复

本文详细介绍了虚拟机系统引导的问题及恢复方法,包括磁盘引导、grub2文件引导、内核加载和系统初始化镜像的恢复。在遇到主引导文件、子引导文件或内核丢失等问题时,提供了具体的解决步骤,如重新生成引导文件、从光驱启动等。同时,也讨论了系统启动级别的设置错误导致的无限重启问题及其解决方案,并涵盖了超级用户密码的破解过程。
摘要由CSDN通过智能技术生成

我们在引导修复时需要利用光盘进入系统,所以需要事先为虚拟机添加一个挂载了系统镜像的光驱、挂载系统镜像到光盘

 挂载系统镜像到光盘

 1、磁盘引导

问题模拟:

[root@westoslinux ~]# fdisk -l
Disk /dev/vda: 20 GiB, 21474836480 bytes, 41943040 sectors  ##系统启动分区/dev/vda1处于系统硬盘/dev/vda上
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x34fd8722

Device     Boot   Start      End  Sectors Size Id Type
/dev/vda1  *       2048  2099199  2097152   1G 83 Linux
/dev/vda2       2099200  6293503  4194304   2G 82 Linux swap / Solaris
/dev/vda3       6293504 41943039 35649536  17G 83 Linux
dd if=/dev/zero of=/dev/vda bs=446 count=1    ##清空系统启动磁盘/dev/sda上的mbr数据
    reboot     ##重启

重启系统,系统找不到启动分区,停止启动

引导恢复

按e进入挽救模式,选择Troubleshooting

选择Rescue a Red Hat Enterprise linux system

 输入1,continue

 重新安装grub2到系统硬盘/dev/vda

 编辑/etc/sysconfig/selinux文件,设置SELINUX=disabled

 关闭虚拟机,设定用硬盘启动系统,可以成功开启虚拟机,完成引导恢复。

grub2文件引导

系统文件引导过程中需要用到以下两类引导文件:
一个主引导文件:/boot/grub2/grub.cfg
两个子引导文件:/boot/loader/entries/xxxxxxxxx.conf
主引导文件指定启动分区/boot位置,子引导文件指定系统启动时加载的文件名称,这两类文件丢失时系统无法启动。

1、问题模拟:主引导文件丢失

rm -fr /boot/grub2/grub.cfg删除主引导文件

 解决:

重新生成主引导文件,引导恢复完成

2、问题模拟: 子引导文件丢失

rm -fr /boot/loader/entries/xxxxxxxxx.conf删除子引导文件,重启虚拟机,无法成功开启

解决:

手动引导,开启虚拟机

 kerne-install add 内核版本号 内核镜像重新生成内核引导文件,引导恢复完成

内核加载

系统启动过程中通过加载/boot/vmlinuz-$(uname -r)这一内核初始化硬件设备,内核丢失后,系统报错无法重新启动。

问题模拟:
 

rm -fr /boot/vmlinuz-$(uname -r)删除/boot下的系统内核

解决:

关闭虚拟机,设定用光驱启动系统

复制光驱系统中usr下的内核文件到/boot中即可完成恢复

 关闭虚拟机,设定用硬盘启动系统,可以成功开启虚拟机。

系统初始化镜像

问题模拟:

rm -fr /boot/initramfs-xxxxx.img删除/boot下的系统初始化镜像

引导解决:

 系统启动级别

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

问题模拟:

设定系统默认启动级别为6,重启虚拟机,系统会一直处于重启状态,无法开启虚拟机

解决:在开机选择界面按 e 进入到引导文件编辑模式,在内核加载选项最后加入启动级别5,ctrl+x后可以成功开启虚拟机。

超级用户密码破解

在开机选择界面按 e 进入到引导文件编辑模式,删除到ro选项,更改ro为rw,加入rd.break参数终止系统启动进入单用户模式;

 切换到真实系统环境的shell下,修改超级用户密码,建立 /.autorelabel 文件

 重启虚拟机,超级用户密码更改完成,可以成功登录超级用户。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值