如何升级位于 initramfs 内部的模块?

如何升级位于 initramfs 内部的模块?

我们最近升级了我们的一台 CentOS 6.0 机器上的 e1000e(英特尔以太网)模块。

即使模块编译并安装良好,但仍在使用旧版本。

我们已经追踪到这一事实,即e1000e.ko模块位于引导内核的 initamfs 文件中,因此,即使位于/lib/modules/... 的模块正在更新,旧模块仍然会从 initramfs 文件中加载。

经过一番研究,我们发现在 CentOS 中创建一个新的 initamfs 文件应该简单来说:

/sbin/dracut <initramfs> <kernel-version>

有人可以确认这是一种重新创建 initamfs 文件的安全方法吗?

这是一个非本地托管(距离 1000 公里...)的盒子,如果重新启动不成功,获得支持来解决这个问题将导致相当长的停机时间。

答案1

上游供应商的官方文档验证初始 RAM 磁盘映像

答案2

根据我的个人经验,只要当前内核能够启动并正常工作,更新 dracut 应该不会有问题。

相关内容