dracut添加指定固件

2023-10-30 17:36
文章标签 指定 固件 dracut

本文主要是介绍dracut添加指定固件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • linux-firmware
    • 1、固件介绍
    • 2、Microcode updates for CPUs
    • 3、如何添加固件

linux-firmware

1、固件介绍

  • 存放在 /lib/firmware,固件来自kernel 仓库
  • 更多的固件可以参考git仓库,https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain
  • 想要获取固件,无论是从仓库或者浏览器中下载你所需要的固件,支持多种系统固件,可以参考,https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
  • 还有一些特殊的固件,像 Intel microcode 和 指定的 wifi 设备,上面仓库中的固件是不可用的,需要官网找一下

2、Microcode updates for CPUs

  • 通常,Microcode(指令)能被 BIOS 或 UEFI 加载,它可能会被更新到更新的版本,这些更新会直到机器关机,所以每次运用都要重启机器
  • AMD 官方提供一个检查工具,检测当前固件是否是最新版本,https://github.com/AMDESE/amd_ucode_info/blob/master/amd_ucode_info.py.
  • 官方有一个更新的脚本,可参考,https://www.linuxfromscratch.org/blfs/view/svn/postlfs/initramfs.html

3、如何添加固件

  • 添加固件后,需要添加入 initrramfs 中,当系统启动时需要使用固件,有两种方式:

    • 系统使用前:

      • 对于未启动的系统,准备做initrd 镜像的系统,添加固件到 相关目录下
      • find . | cpio -o -H newc > /boot/initrd.img,制作启动镜像
      • 添加启动镜像到 grub.cfg 中,initrd /boot/initrd.img
    • 系统使用后:

      • 添加固件到 相关目录下
      • 使用 dracut 或 mkinitrd,重新生成 initrd
      • 重启机器
    • 在这里插入图片描述

    • ctl 环境,添加一个 ice 固件:

      • lsinitrd /boot/initramfs-6.1.38-4.img |less # 未找到 ice.pkg 固件

      • * ln -s /usr/lib/firmware/intel/ice/ddp/ice-1.3.26.0.pkg /usr/lib/firmware/intel/ice/ddp/ice.pkg
        
      • dracut --add-drivers “ice” initrd_test.img # 制作测试 img

      • lsinitrd initrd_test.img |less # 新添加的 ice.pkg 固件,已经生效

      • 在这里插入图片描述

        • 方式一:直接命令行添加
    • dracut -f --add-drivers “ice” # 重新覆盖 /boot/initramfs.img

  • 方式二:添加一个 dracut 脚本,首先在 /lib/dracut/modules.d/ 下面添加一个自己的目录99mymodule,然后在目录下创建一个脚本,当运行 dracut 时,会自动执行你的这个脚本,脚本内容可以写安装某个目录,如下

在这里插入图片描述

  • 方式三: 还有一种方式添加到 dracut.conf 配置文件中,加入我们添加一个ice 驱动,这样每次执行 dracut 都会自动添加相关驱动

在这里插入图片描述

参考:【】 Intel® 800 Series序列网卡 ice 驱动安装 - bdy - 博客园 (cnblogs.com)

这篇关于dracut添加指定固件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/309520

相关文章

Python将大量遥感数据的值缩放指定倍数的方法(推荐)

《Python将大量遥感数据的值缩放指定倍数的方法(推荐)》本文介绍基于Python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处理,并将所得处理后数据保存为新的遥感影像... 本文介绍基于python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处

通过C#获取PDF中指定文本或所有文本的字体信息

《通过C#获取PDF中指定文本或所有文本的字体信息》在设计和出版行业中,字体的选择和使用对最终作品的质量有着重要影响,然而,有时我们可能会遇到包含未知字体的PDF文件,这使得我们无法准确地复制或修改文... 目录引言C# 获取PDF中指定文本的字体信息C# 获取PDF文档中用到的所有字体信息引言在设计和出

多模块的springboot项目发布指定模块的脚本方式

《多模块的springboot项目发布指定模块的脚本方式》该文章主要介绍了如何在多模块的SpringBoot项目中发布指定模块的脚本,作者原先的脚本会清理并编译所有模块,导致发布时间过长,通过简化脚本... 目录多模块的springboot项目发布指定模块的脚本1、不计成本地全部发布2、指定模块发布总结多模

四种简单方法 轻松进入电脑主板 BIOS 或 UEFI 固件设置

《四种简单方法轻松进入电脑主板BIOS或UEFI固件设置》设置BIOS/UEFI是计算机维护和管理中的一项重要任务,它允许用户配置计算机的启动选项、硬件设置和其他关键参数,该怎么进入呢?下面... 随着计算机技术的发展,大多数主流 PC 和笔记本已经从传统 BIOS 转向了 UEFI 固件。很多时候,我们也

VMWare报错“指定的文件不是虚拟磁盘“或“The file specified is not a virtual disk”问题

《VMWare报错“指定的文件不是虚拟磁盘“或“Thefilespecifiedisnotavirtualdisk”问题》文章描述了如何修复VMware虚拟机中出现的“指定的文件不是虚拟... 目录VMWare报错“指定的文件不是虚拟磁盘“或“The file specified is not a virt

Oracle Expdp按条件导出指定表数据的方法实例

《OracleExpdp按条件导出指定表数据的方法实例》:本文主要介绍Oracle的expdp数据泵方式导出特定机构和时间范围的数据,并通过parfile文件进行条件限制和配置,文中通过代码介绍... 目录1.场景描述 2.方案分析3.实验验证 3.1 parfile文件3.2 expdp命令导出4.总结

遮罩,在指定元素上进行遮罩

废话不多说,直接上代码: ps:依赖 jquer.js 1.首先,定义一个 Overlay.js  代码如下: /*遮罩 Overlay js 对象*/function Overlay(options){//{targetId:'',viewHtml:'',viewWidth:'',viewHeight:''}try{this.state=false;//遮罩状态 true 激活,f

Jenkins构建Maven聚合工程,指定构建子模块

一、设置单独编译构建子模块 配置: 1、Root POM指向父pom.xml 2、Goals and options指定构建模块的参数: mvn -pl project1/project1-son -am clean package 单独构建project1-son项目以及它所依赖的其它项目。 说明: mvn clean package -pl 父级模块名/子模块名 -am参数

C#关闭指定时间段的Excel进程的方法

private DateTime beforeTime;            //Excel启动之前时间          private DateTime afterTime;               //Excel启动之后时间          //举例          beforeTime = DateTime.Now;          Excel.Applicat

struts2中的json返回指定的多个参数

要返回指定的多个参数,就必须在struts.xml中的配置如下: <action name="goodsType_*" class="goodsTypeAction" method="{1}"> <!-- 查询商品类别信息==分页 --> <result type="json" name="goodsType_findPgae"> <!--在这一行进行指定,其中lis是一个List集合,但