![如何查明内核中包含哪个版本的驱动程序?](https://linux22.com/image/60045/%E5%A6%82%E4%BD%95%E6%9F%A5%E6%98%8E%E5%86%85%E6%A0%B8%E4%B8%AD%E5%8C%85%E5%90%AB%E5%93%AA%E4%B8%AA%E7%89%88%E6%9C%AC%E7%9A%84%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%EF%BC%9F.png)
我需要找出未安装的内核中包含哪个驱动程序/模块版本。源中是否有包含此内容或在线列出但无法找到的内容的文档?
答案1
您可以使用该modinfo
命令为您提供有关给定模块的所有类型的信息。
例如:
$ modinfo bluetooth
filename: /lib/modules/3.17.4-1-ARCH/kernel/net/bluetooth/bluetooth.ko.gz
alias: net-pf-31
license: GPL
version: 2.19
description: Bluetooth Core ver 2.19
author: Marcel Holtmann <[email protected]>
srcversion: 4D63C2C41C55E984E7057A5
depends: rfkill,crc16
intree: Y
vermagic: 3.17.4-1-ARCH SMP preempt mod_unload modversions
parm: disable_esco:Disable eSCO connection creation (bool)
parm: disable_ertm:Disable enhanced retransmission mode (bool)
然而,大多数时候您不会找到任何明确的版本,因为该模块只是包含在内核源代码树中的模块。
答案2
当您说“最新内核”时,您是指最新稳定版、最新长期版还是最新主线版?您在寻找非 RC 内核还是 RC 内核?由于我不知道这些细节,我假设您指的是最新的非 RC 主线内核,目前是 4.5。
对于内核 4.5,您所要做的就是浏览4.5 git 树向下驱动程序/scsi/fnic看看fnic.h:
#define DRV_NAME "fnic"
#define DRV_DESCRIPTION "Cisco FCoE HBA Driver"
#define DRV_VERSION "1.6.0.17a"
虽然内核 4.5 的发布距离您提出问题的时间相距甚远,但此处描述的相同技术将适用于更接近您的问题时间范围的内核,例如内核3.17或者内核3.18。