Alpine 编译驱动 ( 内核模块 )
编译流程
查看内核版本
登录 Alpine
, 输入 uname -r
查看内核版本
安装对应包
根据内核版本安装对应包
等待安装完毕
上传源码
将 Hello World
程序发送到 Alpine
修改 Makefile
要适当修改 Makefile
里的 modules
路径
编译模块
进入程序所在文件夹,执行 make
可以看到,成功生成了 .ko
文件
安装模块
使用 insmod
命令安装
卸载模块
使用 rmmod
命令卸载
查看效果
使用 dmesg
输出内核日志
用到的代码
1.c
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("Dual BSD/GPL");
MODULE_AUTHOR("Hcamael");
int hello_init(void)
{
printk(KERN_INFO "Hello World\n");
return 0;
}
void hello_exit(void)
{
printk(KERN_INFO "Goodbye World\n");
}
module_init(hello_init);
module_exit(hello_exit);
Makefile
obj-m += 1.o
all:
make -C /lib/modules/5.15.5-0-virt/build M=$(PWD) modules
clean:
make -C /lib/modules/5.15.5-0-virt/build/ M=$(PWD) clean