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一次性将指定版本所有包上传PyPI镜像解决方案

《Python一次性将指定版本所有包上传PyPI镜像解决方案》本文主要介绍了一个安全、完整、可离线部署的解决方案,用于一次性准备指定Python版本的所有包,然后导出到内网环境,感兴趣的小伙伴可以跟随... 目录为什么需要这个方案完整解决方案1. 项目目录结构2. 创建智能下载脚本3. 创建包清单生成脚本4

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下

SpringBoot实现不同接口指定上传文件大小的具体步骤

《SpringBoot实现不同接口指定上传文件大小的具体步骤》:本文主要介绍在SpringBoot中通过自定义注解、AOP拦截和配置文件实现不同接口上传文件大小限制的方法,强调需设置全局阈值远大于... 目录一  springboot实现不同接口指定文件大小1.1 思路说明1.2 工程启动说明二 具体实施2

java -jar example.jar 产生的日志输出到指定文件的方法

《java-jarexample.jar产生的日志输出到指定文件的方法》这篇文章给大家介绍java-jarexample.jar产生的日志输出到指定文件的方法,本文给大家介绍的非常详细,对大家的... 目录怎么让 Java -jar example.jar 产生的日志输出到指定文件一、方法1:使用重定向1、

基于Python实现数字限制在指定范围内的五种方式

《基于Python实现数字限制在指定范围内的五种方式》在编程中,数字范围限制是常见需求,无论是游戏开发中的角色属性值、金融计算中的利率调整,还是传感器数据处理中的异常值过滤,都需要将数字控制在合理范围... 目录引言一、基础条件判断法二、数学运算巧解法三、装饰器模式法四、自定义类封装法五、NumPy数组处理

Golang如何对cron进行二次封装实现指定时间执行定时任务

《Golang如何对cron进行二次封装实现指定时间执行定时任务》:本文主要介绍Golang如何对cron进行二次封装实现指定时间执行定时任务问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录背景cron库下载代码示例【1】结构体定义【2】定时任务开启【3】使用示例【4】控制台输出总结背景

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文

python3如何找到字典的下标index、获取list中指定元素的位置索引

《python3如何找到字典的下标index、获取list中指定元素的位置索引》:本文主要介绍python3如何找到字典的下标index、获取list中指定元素的位置索引问题,具有很好的参考价值,... 目录enumerate()找到字典的下标 index获取list中指定元素的位置索引总结enumerat

Java实现删除文件中的指定内容

《Java实现删除文件中的指定内容》在日常开发中,经常需要对文本文件进行批量处理,其中,删除文件中指定内容是最常见的需求之一,下面我们就来看看如何使用java实现删除文件中的指定内容吧... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细介绍3.1 Ja

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以