当前位置: 首页 > news >正文

系统引导修复(2)

四.文件引导阶段

在文件引导阶段,系统会读取/boot/grub2/grub.cfg (自动引导文件),在此文件中指定系统系统过程中读取什么文件,加载什么参数

如何修改grub参数(以修改时间为例)

[root@servera default]# vim /etc/default/grub #生成grub.cfg时使用的默认参数
GRUB_TIMEOUT=10 #设定grub启动时等待时间为10秒
[root@servera default]# grub2-mkconfig > /boot/grub2/grub.cfg #生成新grub.cfg

问题:

当/boot/grub2/grub.cfg文件丢失,那么系统将无法完成自动启动

解决问题:

1.设置问题出现

#确定/boot分区所在系统位置
#确定/分区位置
[root@servera ~]# df
Filesystem     1K-blocks     Used Available Use% Mounted on
devtmpfs            4096        0      4096   0% /dev
tmpfs            1857324        0   1857324   0% /dev/shm
tmpfs             742932     9256    733676   2% /run
/dev/sda3       99634176  2861700  96772476   3% / #/分区
/dev/sda1         983040   264268    718772  27% /boot #/boot分区 
(hd0,1)
/dev/sr0        10825576 10825576         0 100% /rhel9
tmpfs             371464        0    371464   0% /run/user/0
#问题重现
[root@servera ~]# rm -fr /boot/grub2/grub.cfg #此文件如果被删除,并把系统重新启动,那么
出现如下情况:

如何解决

grub> set root=(hd0,msdos1) #指定boot分区位置#hdn 便是boot分区在那个硬盘上#msdosn在那个分区# 指定内核文件,只读挂载/设备
grub> linux16 /vmlinuz-5.15.0-427.13.1.el9_4.x86_64 ro root=/dev/sda3  selinux=0
grub> initrd16 /initramfs-5.14.0-427.13.1.el9_4.x86_64.img
grub> boot
#注意: 以上步骤只能完成本次引导,系统重启后仍然需要手动引导
#永久恢复
#进入系统后执行
#grub2-mkconfig > /boog/grub2/grub.cfg

内核参数文件

[root@servera boot]# cd /boot/loader/entries/
[root@servera entries]# ls
a6fd00acebb0467d805e4e43c2f6b54a-0-rescue.conf #挽救内核参
数
a6fd00acebb0467d805e4e43c2f6b54a-5.14.0-427.13.1.el9_4.x86_64.conf #常规内核参
数信息

如果文件丢失:

[root@servera entries]# rm -fr /boot/loader/entries/*

如何恢复

#首先手动引导系统初始化,进入系统
[root@servera ~]# kernel-install add $(uname -r) /boot/vmlinuz-5.14.0-
427.13.1.el9_4.x86_64
#恢复后文件出现
[root@servera ~]# ls /boot/loader/entries/
a6fd00acebb0467d805e4e43c2f6b54a-0-rescue.conf
a6fd00acebb0467d805e4e43c2f6b54a-5.14.0-427.13.1.el9_4.x86_64.conf

五,启动内核

启动内核过程系统都完成了一下工作:

1.加载内核文件 /boot/vmlinuz-5.14.0-427.13.1.el9_4.x86_64

2.只读挂载/设备

3.读取/etc/fstab文件,确定磁盘挂载策略

4.读取/etc/sysconfig/selinux 确定selinux状态

5.加载系统时钟  

问题:内核文件丢失

[root@servera boot]# rm -fr /boot/vmlinuz-5.14.0-427.13.1.el9_4.x86_64

如何修复

1.进入主机bios让主机从光盘启动

通过设置进入到rescue(挽救模式)

chroot /mnt/sysroot
mount /dev/cdrom /media
cd /media/BaseOS/Packages/
cp kernel-core-5.14.0-427.13.1.el9_4.x86_64.rpm /mnt
cd /mnt
]# ls
kernel-core-5.14.0-427.13.1.el9_4.x86_64.rpm
rpm2cpio kernel-core-5.14.0-427.13.1.el9_4.x86_64.rpm | cpio -id
cd lib/modules/5.14.0-427.13.1.el9_4.x86_64/
cp vmlinuz /boot/vmlinuz-$(uname -r)
exit
exit

修复完成后需要把光盘启动切换至硬盘启动

六.系统初始化

系统初始化作用

使用初始化环境开启系统所有开机启动服务

问题:

[root@servera boot]# rm -fr /boot/initramfs-5.14.0-427.13.1.el9_4.x86_64.img

如何解决:

1.通过光盘引导进入挽救模式
2.恢复文件
chroot /mnt/sysroot
mount /dev/cdrom /media/
cd /media/BaseOS/Packages/
rpm -ivh kernel-core-5.14.0-427.13.1.el9_4.x86_64.rpm  --force
exit
exit
3.设置启动顺序,把硬盘启动放在第一位

http://www.lryc.cn/news/591665.html

相关文章:

  • 《Java语言程序设计》1.2.5 复习题
  • Spring Boot 分层架构详解:Controller、Service、Mapper...
  • SLG 游戏如何进行防破解和防盗版保护?
  • 《迭代器 VS 生成器:Python 惰性计算的两种实现方案详解》
  • Scrapy无缝集成Pyppeteer:异步无头浏览器爬虫架构实战
  • 中科固源深度解析:DoIP 协议原理、应用与安全防护全流程
  • cnpm命令报internal/modules/cjs/loader.js:797 throw err; ^ Error: Cannot find
  • 第12章 存储类、链接和内存管理
  • python学智能算法(二十二)|SVM-点与超平面的距离
  • Adam优化器
  • 深入理解 KVM 子系统:从虚拟化核心到内核实现的全景解析
  • js对象简介、内置对象
  • 【中等】题解力扣21:合并两个有序链表
  • mysql——搭建MGR集群
  • Python清屏方法大全 - 终端清屏的几种实现方式
  • 【Android】EditText使用和监听
  • ELN:生物医药科研的数字化引擎——衍因科技引领高效创新
  • H7-TOOL脱机下载后,自动重连RTT,CAN和串口助手三合一模式方法,方便项目测试(2025-07-16)
  • Cocos游戏中UI跟随模型移动,例如人物头上的血条、昵称条等
  • 对话弋途科技:当AI重构汽车大脑,一场车载操作系统的“觉醒年代“开始了
  • 数据呈现:让图表说话,从数字到洞察的可视化艺术
  • springmvc跨域解决方案
  • 移动安全工具-spd_dump
  • FOC算法中SIMULINK一些常用模块(2)-Permanent Magnet Synchronous Machine模块
  • 五分钟学会大数定律【笔记】
  • mysql 字符集不一致导致索引失效问题
  • 以Streamable HTTP方式访问mcp server的过程
  • 【机器学习实战【七】】机器学习特征选定与评估
  • C 语言基础第 08 天:数组与冒泡排序
  • c#笔记之方法的形参列表以及方法重载