8.2. 在 bootc 镜像 initramfs 中添加模块
rhel9/rhel-bootc 镜像使用 dracut 基础架构在镜像构建期间构建初始 RAM 磁盘( initrd )。initrd 构建并包含在容器内的 /usr/lib/modules/$kver/initramfs.img 位置。
您可以使用置入配置文件来覆盖 dracut 配置,并将其放在 /usr/lib/ > 中,因此使用您要添加的模块重新创建 dracut /dracut.conf.d/ <50-custom-added-modules.confinitrd。
先决条件
- 使用 bootc 引导的系统。
流程
重新创建
initrd作为容器构建的一部分:FROM <baseimage> COPY <50-custom-added-modules>.conf /usr/lib/dracut/dracut.conf.d RUN set -x; kver=$(cd /usr/lib/modules && echo *); dracut -vf /usr/lib/modules/$kver/initramfs.img $kver注意默认情况下,命令会尝试拉取正在运行的内核版本,这会导致错误。明确传递给
目标的kernel 版本以避免出错。