Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在寻找的是从内核模块中检查活动 USB 磁盘序列号的命令。
从内核内部, lsusb 将不起作用。
TMI 条款:我正在为客户开发一个实时 USB 设备,这将是我们当前复制保护的一部分。
您的程序将通过操作系统查询序列号。而且您知道吗,您的客户端有能力更改操作系统,因此您的程序将无法完全信任操作系统提供的信息。
如果您愿意信任客户端(而不是更改操作系统),请查看 Linux 中的 hdparm 程序如何获取其 HDD 详细信息(包括序列号),或者通过 /sys/devices/ 层次结构来查找硬盘及其详细数据(暂时找不到,但我认为串行信息也会在那里)。
另一方面,如果您希望您的客户作弊,那么您最好不要让他们使用您的应用程序。
经过一天的查找,我找到了可以在 StackOverflow 上找到的答案。
本质上:
usb_bus_list在 中声明#include <linux/usb/hcd.h>,允许调用其子函数。
usb_bus_list
#include <linux/usb/hcd.h>