首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用USB驱动程序注册用户空间回调函数

使用USB驱动程序注册用户空间回调函数
EN

Stack Overflow用户
提问于 2011-08-26 15:34:54
回答 1查看 533关注 0票数 0

如何在Linux下使用USB驱动注册大容量存储设备的用户空间回调函数?

当连接上U盘时,我在控制台上收到了以下消息。

USB1-1:采用ehci_hcd和address 2的新型高速usb设备

usb 1-1:产品: DataTraveler G2

usb 1-1:制造商: Kingston

USB1-1: SerialNumber: 0019E06B07F7A961877C02A9

usb 1-1:从1个选项中选择配置#1

scsi0 : USB海量存储设备的SCSI仿真

scsi 0:0:0:0:直接访问金斯敦DataTraveler G2 1.00 PQ: 0 ANSI: 2

SCSI设备sda: 7818240个512字节的hdwr扇区(4003MB)

sda:写保护已关闭

sda:假设驱动器缓存:写入直通

SCSI设备sda: 7818240个512字节的hdwr扇区(4003MB)

sda:写保护已关闭

sda:假设驱动器缓存:通过sda:sda1写入

sd 0:0:0:0:连接的scsi可移动磁盘sda

sd 0:0:0:0:连接的scsi通用sg0类型0

EN

回答 1

Stack Overflow用户

发布于 2011-08-26 15:49:39

您可以创建一个udev规则,在插入命令时执行该命令。基本上,您创建了一个文件,其中包含一组用于匹配的规则以及要运行的程序/脚本的路径。它看起来像这样:

代码语言:javascript
复制
KERNEL=="sd?1", ATTRS{serial}=="0019E06B07F7A961877C02A9", RUN+="/path/to/script arg1 arg2 ... argN"

这将在创建名为argN的设备节点时运行/path/to/script,参数为arg1argN,其中?是任意字符,序列号在数据中给定。如果您需要更好地控制何时触发规则,您可以从udevinfo程序获取大量信息,以将其合并到规则中。例如,如果您希望它对所有Kingston驱动器都进行触发。然后,您需要找到vendorID,也许还需要一些这些驱动器特有的更多信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7201412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档