2010-11-15 63 views

回答

6

我没有做我自己,但你可以尝试udev规则是这样的:

# Hitachi SimpleDrive mini, model HTS545050B9A300 (500 GB USB HDD) 
SUBSYSTEM=="block", ATTR{size}=="976768002", ATTRS{product}=="SimpleDrive mini", ATTRS{serial}=="2512009121920487", ACTION=="add", RUN+="/lib/udev/local.usb.hdd.sh add $devpath" 

放置在/etc/udev/rules.d/90-local.rules或类似的地方,您的操作系统肯定可靠。

+0

是否有可能使用UUID与这些属性中的其他一切做了吗? – Cascabel 2010-11-15 22:54:32

+0

对不起,我不知道 - 这是我自己的待办事项列表尚未:) – 2010-11-16 14:57:19

2

这里是an example蟒蛇守护进程,你可以使用监听部分,然后将文件复制到您的目录不应该是一个问题。

18

以供将来参考,这里是如何在检测到USB驱动器的运行bash脚本。

连接你的设备和运行lsusb检索设备的信息。您应该看到类似这样的东西:

$ lsusb 
Bus 002 Device 039: ID 0bc2:2100 Seagate RSS LLC 

在这种情况下,设备的供应商ID为0bc2和产品ID是2100

现在,您可以使用您创建udev规则一个你选择的文本编辑器。

$ sudo的VI /etc/udev/rules.d/85-my_usb_device_rule.rules

并添加此:

ACTION == “添加”,SUBSYSTEM ==” USB”,SYSFS {idVendor} == “0bc2”, SYSFS {} idProduct == “2100”,RUN + = “/家/ MYHOME/my_script”

/home/myhome/my_script是路径到您的脚本它会做你想做的。

要确保检测脚本将执行向右走,运行此命令重新加载udev规则:

$ sudo的udevadm控制--reload规则

这是在Fedora测试14.

+6

我Crunchbang的Linux使用此11(华尔)基于Debian],但我不得不改变“SYSFS”到“ATTR”得到它工作。这家伙发布了一个调试udev的好方法... http://www.jpichon.net/blog/2011/12/debugging-udev-rules/ – neildaemond 2013-11-01 03:28:51