Linux7/CentOS 7 MBR扇区修复和修复GRUB引导故障

本文详细介绍了Linux CentOS 7的引导过程,包括MBR引导、GRUB菜单、内核加载及init进程初始化。针对MBR扇区故障和GRUB引导故障,提供了详细的修复步骤,包括备份MBR、急救模式恢复、重建GRUB配置。同时,文章还提及了遗忘root密码的解决方法和系统服务、运行级别的管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Linux CentOS 7引导过程

引导过程图:
在这里插入图片描述

(1)开机自检

服务器开机后,根据主板BIOS中的设置对电脑基本设备进行初步检测,并初始化部分硬件,检查成功后根据预设的启动顺序移交系统控制权。

(2)MBR引导

从硬盘中启动系统时,根据硬盘第一扇区中MBR的设置,将系统控制权传递给包含操作系统引导文件的分区,或直接根据MBR记录的引导信息调用启动菜单。

(3)GRUB菜单

GRUB算是使用最广泛的多系统引导器程序。系统控制权传递给GRUB后,将会显示启动菜单提供给用户选择,并根据所选项加载Linux内核文件,然后将系统控制权转交给内核。

(4)加载内核与内存文件系统

系统引导器从本地硬盘中加载内核以及内存文件系统。
Linux内核是一个预先编译好的特殊二进制文件,介于各种硬件资源与系统程序之间,负责资源分配与调度。
内核接过系统掌控权后,将完全掌控整个Linux操作系统的运行过程。

(5)init进程初始化

内核初始化在init找到驱动程序的所有硬件,然后PID 1从init执行/sbin/init,CentOS7 将其复制为systemd,systemd启动initrd.target中所有单元,并挂载根文件系统。内核与文件系统由内存文件系统切换至系统根文件系统,并重新运行。systemd启动默认target,最后等待用户进行登录。

2、init进程

由Linux内核加载运行/sbin/init程序
是系统中第一个进程
PID(进程标记)号永远为1

3、Systemd单元类型
### CentOS 7 引导修复方法 当CentOS 7引导出现问题时,可以通过以下方法进行修复: #### 使用救援模式修复引导 1. **制作启动U盘并进入救援模式** - 准备一个包含CentOS ISO镜像的启动U盘。 - 启动计算机时选择从U盘启动,进入CentOS安装界面。 - 不要选择“Install CentOS”,而是选择“Troubleshooting”下的“Rescue a CentOS system”选项[^1]。 2. **挂载系统分区** - 在弹出的选择窗口中,选择`Continue`以只读方式挂载根文件系统,或者手动挂载所需的分区。 - 如果选择了自动挂载,则系统会被挂载到`/mnt/sysimage`目录下[^2]。 3. **切换到目标系统环境** - 输入以下命令以切换到目标系统的根环境中: ```bash chroot /mnt/sysimage ``` 4. **重新安装GRUB2** - 执行以下命令以重新安装GRUB2到磁盘的第一个扇区(通常是`/dev/sda`): ```bash /sbin/grub2-install /dev/sda ``` - 配置GRUB2: ```bash grub2-mkconfig -o /boot/grub2/grub.cfg ``` - 上述命令会生成新的引导菜单配置文件[^3]。 5. **重启系统** - 完成上述操作后,退出chroot环境并重启系统: ```bash exit reboot ``` #### 修复Windows引导项 如果之前安装了双系统(如WindowsCentOS),可能会发现修复CentOS引导后,Windows的引导项消失了。解决方法如下: - 编辑GRUB2配置文件 `/etc/default/grub`,确保启用了检测其他操作系统的功能: ```bash GRUB_DISABLE_OS_PROBER=false ``` - 更新GRUB2配置文件: ```bash grub2-mkconfig -o /boot/grub2/grub.cfg ``` #### 修复MBR 如果主引导记录(MBR)损坏,也可以按照以下步骤修复: 1. **备份现有MBR** - 使用以下命令备份现有的MBR数据: ```bash dd if=/dev/sda of=/root/mbr.bak count=1 bs=512 ``` 2. **重新安装GRUB2到MBR** - 使用`grub2-install`命令重新安装GRUB2到指定设备上: ```bash grub2-install --target=i386-pc --recheck --debug /dev/sda ``` 3. **同步更改并重启** - 确保所有更改已写入磁盘: ```bash sync ``` - 最后重启系统验证修复效果。 --- ### 注意事项 - 在执行任何修改前,请务必做好重要数据的备份工作。 - 若不确定具体的操作细节,建议查阅官方文档或寻求专业技术支持。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值