DKMS 3.0 中 REMAKE_INITRD
被弃用的链接:
火山引擎:veLinux 2.0对比1.0的差异说明
https://www.volcengine.com/docs/6396/1258076”
Deprecated feature: REMAKE_INITRD on dkms install on Fedora 35 · Issue #12867 · openzfs/zfs · GitHub:从该链接的讨论中可以看到,在 Fedora 35 等系统中使用 DKMS 3.0 安装软件包时,会出现 “Deprecated feature: remake_initrd” 的提示,表明该功能已被弃用。
https://github.com/openzfs/zfs/issues/12867
DKMS3.0关键参数:
核心区别
DKMS 3.0 的自动处理机制
DKMS 3.0 默认通过 auto-reattach 功能自动处理 initramfs 更新,无需额外配置。但如果需要更精细的控制(例如仅在特定条件下更新),可以结合 deb trigger 使用。
<1> 创建 deb trigger 的方法
如果你选择手动管理 trigger,可以在 DKMS 模块的 debian/ 目录中添加触发器规则。以下是一个示例:
bash
在 DKMS 模块的 debian 目录中创建 triggers 文件
echo "activate-noawait update-initramfs" > debian/triggers
<2> 结合 DKMS 和 deb 包的最佳实践
推荐在 DKMS 模块的 postinst 脚本中调用 update-initramfs,而不是依赖 deb trigger
#!/bin/sh
set -e
case "$1" in
install|upgrade)
# 执行 DKMS 安装
dkms install -m 模块名 -v 版本号
# 手动触发 initramfs 更新
update-initramfs -u -k all
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
exit 0