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

initramfs及rpm/dracut操作

一、背景

更新bundle包后发现系统异常。

定位发现驱动升级不成功,内核启动后加载的还是更新前的旧驱动。但等内核启动完成后,卸载旧驱动手动insmod新驱动,是可以加载成功的。

驱动的安装目录在/lib/modules/$KERNELVERSION/extra目录下。

最终定位为,问题机器"更新"过内核,而且是强行安装了同一个版本的内核RPM包。导致原来机器上的驱动被打包到了initramfs中,即使后续更新驱动,内核启动的时候始终加载的是initramfs中的旧驱动。

二、initramfs如何生成?

initramfs是打包到内核安装包里,然后安装到/boot目录下的么?

1、获取rpm包的安装文件

extract内核安装rpm包的内容,看到内核安装包里只有三个目录,boot和lib和sbin。

而boot目录下是config文件、符号表、vmlinuz。所以,内核安装包只涉及内核源码和编译相关的vmlinuz/符号表/config文件。

#rpm2cpio kernel_5.10.0-3.0.0.3.rpm | cpio -ivdm #ls kernel-5.10.0-3.0.0.3.x86_64.rpm boot lib sbin #cd boot/ #ls config-5.10.0-3.0.0.3 System.map-5.10.0-3.0.0.3 vmlinuz-5.10.0-3.0.0.3

initramfs和根文件系统的镜像文件属于操作系统的范畴,不会在内核安装包里,那他们是怎么生成的呢?它们是在执行内核rpm包安装的时候,根据当前机器上的操作系统环境生成的!!!

2、获取rpm包的spec文件

我们看一下内核rpm包的spec文件,试图查找一下initramfs的蛛丝马迹。

首先比较确认的是,spec文件并不会直接打包到rpm包

http://www.jsqmd.com/news/585830/

相关文章:

  • OpenClaw定时任务详解:Qwen3-32B-Chat镜像实现凌晨数据备份
  • SimpleBar在Vue应用中的终极实践指南:打造完美滚动体验的10个技巧
  • Windows远程桌面使用微软账户连接提示你的凭证不工作问题解决
  • 2026年大理民宿运营指导排名,半亩酒店管理性价比高获认可 - 工业推荐榜
  • 百联OK卡回收的隐藏技巧:提升价值的实用方法 - 团团收购物卡回收
  • Android Studio中文语言包:构建无缝本地化开发环境的完整指南
  • 藏在网络深处的宝藏:爱娃子博客,最具温度的优秀个人独立博客
  • 无需显卡和命令行!Ollama图形界面部署Llama-3.2-3B全流程
  • Pixel Dream Workshop 游戏开发应用:快速生成游戏角色与场景原画
  • 无人机数据分析终极指南:UAV Log Viewer 免费开源工具完全解析
  • 3步攻克B站直播推流限制:让第三方工具适配效率提升70%
  • 瑞祥卡在哪里可以使用?获取使用范围及回收方法! - 团团收购物卡回收
  • 细聊民宿运营管理服务价格,丽江半亩酒店管理费用多少钱? - myqiye
  • 实战指南:基于快马平台深度开发,构建企业级workbuddy团队项目管理看板
  • 从RTCM2到RTCM3e:一文搞懂RTKLib差分数据兼容性设计与扩展开发
  • 告别适配烦恼:v-scale-screen实现Vue大屏自适应的终极方案
  • 智能文档聚合系统:自动化构建企业知识库的完整方案
  • B站m4s格式转MP4完全指南:从格式解析到跨设备播放全攻略
  • 网络安全攻防战:由 Agent 驱动的自动化渗透测试
  • OpenClaw+Qwen3.5-9B:非程序员如何搞定邮件自动化
  • WinAsar:3分钟搞定Electron asar文件,告别繁琐命令行的终极方案
  • Hexo-Theme-Matery主题终极移动端适配与优化指南:打造完美的响应式博客体验
  • FreeGPT-WebUI网络搜索功能终极指南:如何获取实时AI对话体验
  • FPGA开发:音乐播放器
  • 05:输出保留12位小数的浮点数
  • 从零开始构建P2P视频分发网络:PCDN实战指南
  • 盘点2026年徐州能做一般纳税人升级的好用代理记账公司 - 工业品牌热点
  • 如何通过脚本化工作流突破Adobe Illustrator的效率瓶颈?
  • WarcraftHelper:经典《魔兽争霸III》的现代适配解决方案
  • 告别手动抢茅台!Campus-iMaoTai智能预约系统完整使用指南