假设我知道这里没有硬件的数字产品/供应商ID,并且想知道内核中是否支持我,我可以这样做(USB蓝牙接收器示例):
modinfo btusb
filename: /lib/modules/3.7.5-030705-generic/kernel/drivers/bluetooth/btusb.ko
[...]
alias: usb:v0A5Cp*d*dc*dsc*dp*icFFisc01ip01in*
alias: usb:v0489p*d*dc*dsc*dp*icFFisc01ip01in*
alias: usb:v413Cp8197d*dc*dsc*dp*ic*isc*ip*in*
[...]
由此,我可以看到要主张哪些设备,btusb
并且需要我事先知道模块名称。但是,在某些情况下,我对支持此类设备的模块名称一无所知。
网络硬件是其中很难找到的类别之一。另外,lspci
和lsusb
名称有时是不确定的,也可能是错误的。我目前正在遍历整个内核源代码树,这不是那么好。
- 有没有办法列出所有的modaliases 所有模块(包括内置到内核)一气呵成,所以我可以找到一个匹配?
- 或者,是否可以查询内核以向我提供声称我实际上不拥有这种设备的内核模块?
用例:
- 用户在这里提出问题,我可以通过实际验证“如果您升级到...就获得支持”或“尝试rmmod module1; modprobe module2,因为module2似乎也支持您的设备”来回答/重复。
- 在购买具有ID的先验知识的硬件之前,请检查支持。除了使用ID搜索外,我还可以查找有关内核模块本身的错误报告。
真正没有简单的方法来获取此信息。并非所有USB设备都基于其ID。基于类的设备(存储,HID以及许多串行和网络设备)根据它们提供的接口进行标识。
—
2013年
也许usb-modeswitch可以帮上忙。如果没有的话:
—
Dimitris Theodoridis 2013年
sudo apt-get install usb-modeswitch
输入lsusb,您会看到ID
—
Dimitris Theodoridis
从您的问题中,我只是看到您想查看ID并进行更改,我错了吗?
—
Dimitris Theodoridis
现在我真的不明白你。请说明您的问题,以使我无法更好地理解它,看看我是否真的可以为您提供帮助
—
Dimitris Theodoridis