在启动时自动加载内核模块。(Angstrom)

在启动时自动加载内核模块。(Angstrom)

我知道如何在 ubuntu 中自动加载模块。你将模块放在 /etc/modules 中

但是,我为正在开发的嵌入式系统编译了内核和文件系统。但 /etc 目录中没有“模块”文件。(顺便说一下,我使用的是 angstrom)

有没有办法在启动时加载我的模块?

提前致谢,

答案1

您是否有一个文件 /etc/rc.modules 或一个同名的目录?
如果没有,您可以尝试找到文件 /etc/rc.local,然后添加modprobe 你的模块在最后。

/etc/rc.local 文件包含在启动时执行的自定义用户命令。

上一个解决方案适用于大多数发行版,但不适合你。你有一些最小的救援类 Linux 发行版。这就是为什么我建议只附加modprobe 你的模块到 /etc/inittab 的末尾。

注意:如果您拥有像 UBUNTU、MINT、FEDORA、ARCH 等普通 Linux 发行版,则应避免使用此方法...
如果您使用普通发行版,请使用您的发行版的方式添加自定义模块。

答案2

初始化系统必须对它们进行 insmod。

至少对于 Buildroot / BusyBox 来说,似乎没有预先自动化的方式,所以你应该只添加/etc/init.d/S99Modules包含以下类型命令的自己的文件:

modprobe mymodule
modprobe mymodule2

/etc/init.d/S99Modules然后从运行/etc/init.d/rcS

for i in /etc/init.d/S??* ;do
    ...
            $i start

这行代码又调用了:

::sysinit:/etc/init.d/rcS

在 中/etc/inittab,该文件由进程运行,该进程是内核命令行参数init处的可执行文件/init或指定的进程。init=

这是方便尝试的设置

相关内容