【发布时间】:2013-03-05 06:30:55
【问题描述】:
我需要一个udev 规则,以便它能够检测 USB pendrive 的供应商,并只允许特定供应商,拒绝所有其他供应商。
这样的规则怎么写?
规则应该放在哪里
/etc/udev/rules.d或/lib/udev/rules.d/udev规则生效的命令是什么。
急请
【问题讨论】:
我需要一个udev 规则,以便它能够检测 USB pendrive 的供应商,并只允许特定供应商,拒绝所有其他供应商。
这样的规则怎么写?
规则应该放在哪里/etc/udev/rules.d或/lib/udev/rules.d/
udev规则生效的命令是什么。
急请
【问题讨论】:
我建议查看dmesg 的输出或/sys 中的文件,以检测您设备的正确供应商和型号。有了这些之后,为设备编写 udev 规则就很简单了。例如,这是我用于 Apple iPod 的规则(写给 /etc/udev/rules.d/60-ipod.rules):
ATTRS{serial}=="0000000000000000", ATTRS{manufacturer}=="Apple Inc.", ATTRS{product}=="iPod", KERNEL=="sd?1", SYMLINK+="ipod", GROUP="plugdev", MODE="0660"
这将创建一个/dev/ipod 符号链接到具有定义序列号的 SCSI 磁盘设备的第一个分区,该设备来自制造商“Apple Inc.”,型号名称为“iPod”。
执行udevadm control --reload-rules 和udevadm trigger 之类的操作(取决于您的平台)应该会重新发现新规则并将其应用于您的设备。
【讨论】: