gpt4 book ai didi

linux - 用户内核模块 "not found in directory"?

转载 作者:行者123 更新时间:2023-12-04 19:05:14 24 4
gpt4 key购买 nike

我做了一个简单的 Linux 内核模块。我可以通过 sudo insmod my_module.ko 临时安装模块并使用它。
但我尝试在启动时加载模块但失败:

  • 复制到/lib/modules/5.4.0-1056-raspi/kernel/drivers/my_module/my_module.ko ( uname -r 给出5.4.0-1056-raspi )
  • 已添加 my_module行至 /etc/modules
  • 重新启动

  • 但是,模块未加载: Module my_module not found in directory /lib/modules/5.4.0-1056-raspi .
    但是该模块在 kernel/drivers/my_module/my_module.ko 中。文件! lsmod没有列出它。
    请记住,该模块之前在同一台机器上运行良好,但当时的内核是 5.4.0-1047-raspi现在我看到它是 5.4.0-1056-raspi ,所以我继续安装它 - 但这次它不起作用。
    有什么可以做错的?
    p.s.
    当我试图编译 my_module.c在这个较新的内核上,我收到了关于缺少许可证的错误,所以我添加了 MODULE_LICENSE("GPL"); 行到 c 文件 - 比它编译得好。这是源头上的唯一区别。

    最佳答案

    出于某种原因,我需要运行 sudo depmod首先重新生成模块依赖关系,而不是 sudo modprobe my_module让它再次工作。

    关于linux - 用户内核模块 "not found in directory"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71766166/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com