insmod: ОШИБКА: не удалось вставить модуль HelloWorld.ko: Операция не разрешена - PullRequest
0 голосов
/ 24 октября 2019

Я пытаюсь научиться Linux и разработке ядра.

Я могу собрать модуль, но не могу его загрузить.

HelloWorld.c

/*  
 *  hello-1.c - The simplest kernel module.
 */
#include <linux/module.h>   /* Needed by all modules */
#include <linux/kernel.h>   /* Needed for KERN_INFO */

int init_module(void)
{
    printk(KERN_INFO "Hello world 1.\n");

    /* 
     * A non 0 return means init_module failed; module can't be loaded. 
     */
    return 0;
}

void cleanup_module(void)
{
    printk(KERN_INFO "Goodbye world 1.\n");
}

А вот мой файл make:

KERNEL_SOURCE := /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)

obj-m += HelloWorld.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

во время выполнения insmod для загрузки модуля отказано в разрешении. Я пытался даже сделать это с root, а также с modprobe, но безрезультатно.

Я также пытался Link , но проблема все та же.

Надеюсь, я получу некоторую помощь. Я использую Ubuntu 18.04LTS.

...