无法在内核中加载模块,它显示不允许操作

时间:2016-10-22 00:44:22

标签: c linux kernel kernel-module

我刚刚开始学习内核模块,我在第一个程序,这是我的代码和Makefile

- > hello-1.c / 我的第一个程序 /

  #include <linux/module.h>
  #include <linux/kernel.h>
    int init_module(void ){
      printk(KERN_INFO "Hello this is known as module.\n" );
      return 0;
      }

  void cleanup_module(void ){
     printk(KERN_INFO "Bye. We'll come back soon.\n" );
   }

- &GT;生成文件

obj-m += hello-1.o
  all:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
  clean:
    make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean

现在问题是我能够make all但是我无法加载它,实际上,我试过了

insmod ./hello-1.ko这对我不起作用。

- 错误:insmod:错误:无法插入模块./hello-1.ko:不允许操作

所以,我做了sudo modprobe -v hello-1.ko

- 错误:insmod:错误:无法插入模块./hello-1.ko:不允许操作

但是,在执行lsmod时,我能够看到我的模块,我也能够modinfo hello_1

因此,我尝试了modprobe hello_1,但它正在显示

- 错误:modprobe:致命错误:目录/lib/modules/4.4.0-43-lowlatency中找不到模块hello_1

请帮助我找到我缺少的地方,因为这是我的第一个项目。谢谢!

0 个答案:

没有答案