有没有办法确定内核模块是针对哪个内核版本进行编译的?

有没有办法确定内核模块是针对哪个内核版本进行编译的?

我最近一直在尝试使用一些交叉工具来创建内核模块以进行嵌入式设置。

将来能够识别这些模块所针对的内核版本对我很有帮助。我在网上找不到任何关于此的信息,所以我开始认为这也许是不可能的。

所以我的问题是是否有任何命令行实用程序可以确定 *.ko 文件编译所针对的内核版本标头?

答案1

执行命令modinfo <kernel_module_name>并查找维尔马吉克

shw@shw:/tmp #modinfo btrfs
文件名:/lib/modules/3.13.0-36-generic/kernel/fs/btrfs/btrfs.ko
许可证:GPL
别名:devname:btrfs-control
别名:char-major-10-234
别名:fs-btrfs srcversion: EA2C07F0B841AE2A6D8F91F
取决于: libcrc32c,raid6_pq,xor
intree: Y
vermagic:3.13.0-36-通用SMP mod_unload modversions 686 <==
签名者:Magrathea:冰川签名密钥
sig_key:FF:9A:DA:11:B8:55:51:6A:72:98:65:9D:4E:3F:BB:76:C5: 4A:D3:30
sig_hashalgo: sha512

相关内容