持久模块加载不起作用

持久模块加载不起作用

红帽6

2.6.32-754.el6.x86_64

我一直在研究两种驱动程序,一种是与 PCIe FPGA 卡通信的 DMA 驱动程序。另一个是网络驱动程序。网络驱动程序依赖于 DMA 驱动程序。我已经使用 modprobe 手动添加了模块,并且它按预期工作。 lsmod 按预期显示依赖关系:

modprobe xgbeth
[root@axh-dt sysadmin]# lsmod | grep xgbeth
xgbeth                 33963  0
xdma                  171879  1 xgbeth

我现在正在尝试让这些模块在启动时加载。我遵循了这个指南: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/deployment_guide/sec-persistent_module_loading

我最终在 /etc/sysconfig/modules/ 中得到了一个 .modules 文件,其中包含以下内容:

#!/bin/sh
exec /sbin/modprobe xgbeth

现在,重新启动。我可以看到 xdma 驱动程序正在加载(并且可以在 lsmod 中看到它),但 xgbeth 驱动程序尚未加载。我必须使用 modprobe 手动加载它。

我在 /var/log/messages 中看不到任何表明出现问题的消息

任何人都可以阐明这可能出问题的地方吗?

答案1

如果您更改了有关内核的某些内容(包括内核模块),则更新 initrd 始终是一个好主意。

https://www.thegeekdiary.com/centos-rhel-6-how-to-rebuild-initial-ramdisk-image/

相关内容