热插拔事件触发自定义行为
1、热插拔事件的产生
在编写的总线驱动程序的.uevet处理函数中通过环境变量上报给udevd
2、udev信息查看
udevinfo –a –p /sys/devices/XXX
3、udev规则的添加
如果想让事件触发自定义的行为,需在/etc/udev/rules.d目录下添加新的规则
例如添加文件99-zy.rules
ACTION=="add", KERNEL=="lddtest", RUN+="/bin/test.sh"
其中/bin/test.sh为自定义的可执行脚本
4、测试规则的执行情况
可以通过命令udevtest /sys/devices/XXX查看规则的执行情况
另外,更为事件还会通过socket上报给hal,有hal结合具体应用进行更为复杂的处理。例如U盘以图标形式显示给用户,就是Gnome或KDE等桌面系统与HAL共同作用的效果。
更多相关知识:
http://zhumeng8337797.blog.163.com/blog/static/1007689142010836613486/ 简述udev的自定义规则
http://hi.baidu.com/wlcspace/item/842f18f202d9540884d278c3 udev 详解
http://wenku.baidu.com/view/1fe9d880e53a580216fcfef3.html UDEV详细解惑
http://www.mike.org.cn/articles/linux-xiangjie-udev/ Linux┊详解udev
http://wenku.baidu.com/view/a552bc0f844769eae009ed80.html udev规则及其实例
http://wenku.baidu.com/view/eae6fb40336c1eb91a375d92.html 跟我一起写udev规则
http://www.reactivated.net/writing_udev_rules.html Writing udev rules
http://www.cnblogs.com/armlinux/archive/2011/12/05/2396773.html
http://blog.csdn.net/pifangsione/article/details/24500695 Ubuntu下自动加载U盘