将内核模块安装到特定路径

时间:2016-05-16 15:03:47

标签: linux-kernel kernel-module

我想在QEMU上尝试我的简单内核模块hello.ko。我在hdd.img文件上有根文件系统,在另一个文件夹中有编译内核。我通过此命令从源目录运行QEMU:

   qemu-system-i386 -m 128M -kernel arch/x86/boot/bzImage -append "root=/dev/sda" -hda hdd.img

如何安装我的模块? modprobe的?但是如何指定WHERE安装?就像我一样 明白,modprobe安装模块到我的主机系统,而不是QEMU相关的?

1 个答案:

答案 0 :(得分:2)

将自己的内核模块安装到目标机器上与安装到当前机器非常相似:

  1. 使用目标计算机的根文件系统挂载设备。挂载点在下面称为<mount-point>

  2. 将模块文件(cp)复制(例如使用hello.ko命令)到其他内核模块的目录中,该模块位于<mount-point>/lib/modules/<kernel-version>/。最好为3d-party模块使用额外的子目录extra/

  3. 如果您希望在目标计算机上加载modprobe模块,则需要使用depmod命令,该命令已用于内核本身:

    depmod -b <mount-point>/lib/modules/<kernel-version>