+-
没有udev或libusb的Linux上的USB连接事件
我需要找到一种方法来检测USB设备何时插入旧的嵌入式 Linux(CentOs 4)上的C中.

libudev和libusb不可用,所以我对这里的选项一无所知.有dbus,但是我不能使用udisk,因为我需要检测的设备不是存储设备.

谢谢.

最佳答案
您可以尝试编写自定义脚本并将其注册在/ proc / sys / kernel / hotplug中.当一个uevent发生时,内核将调用您的脚本并传递子系统(在您的情况下为usb)作为参数.然后,您必须匹配设备(我不知道该怎么做,这可能是最棘手的部分).

与USB子系统匹配的自定义热插拔脚本的骨架:

$cat my_hotplug.sh 
#!/bin/sh

[ "$1" = usb ] || exit 0
echo "Do something here"

将您的热插拔脚本注册为uevent助手:

echo /path/to/my_hotplug.sh > /proc/sys/kernel/hotplug
点击查看更多相关文章

转载注明原文:没有udev或libusb的Linux上的USB连接事件 - 乐贴网