一、将u盘插入
Device Boot Start End Blocks Id System
/dev/sdc1 1 984 7903948+ b W95 FAT32
看到u盘是sdc1
查看块设备:
[root@server03 rules.d]# ls /sys/block
loop0 loop3 loop6 ram1 ram12 ram15 ram4 ram7 sda sr0
loop1 loop4 loop7 ram10 ram13 ram2 ram5 ram8 sdb sr1
loop2 loop5 ram0 ram11 ram14 ram3 ram6 ram9 sdc
查看u盘信息:
[root@server03 rules.d]# udevadm info -q path -n /dev/sdc1
/devices/pci0000:00/0000:00:11.0/0000:02:03.0/usb1/1-1/1-1:1.0/host35/target35:0:0/35:0:0:0/block/sdc/sdc1
[root@server03 rules.d]# udevadm info -a -p $(udevadm info -q path -n /dev/sdc1)
得到u盘信息
[root@server03 squirrelmail]# cd /etc/udev/rules.d/
[root@server03 rules.d]# ls
60-fprint-autosuspend.rules 90-hal.rules
60-pcmcia.rules 97-bluetooth-serial.rules
60-raw.rules 98-kexec.rules
70-persistent-cd.rules 99-fuse.rules
70-persistent-net.rules 99-vmware-scsi-udev.rules
90-alsa.rules
可以看到很多规则
udev的规则,用户自定义的规则一般放在/etc/udev/rules.d目录下,里面有很多规则都是以数字开头的,数字越小就表示规则越优先。
[root@server03 rules.d]# cp 99-vmware-scsi-udev.rules 10-usb.rules
[root@server03 rules.d]# vim 10-usb.rules
ATTRS{vendor}=="hp ",RUN+="/usr/bin/wall 'im comming'"
一般我们要使这个规则文件生效,要热插拔我们的设备以产生一个事件或在设备中的 event 文件中增加信息以达到发送事件的目的来更新我们的 udev 规则,但这里有个更加方便的方法,我们可以运行下面这个命令。
udevadm control --reload-rules
当u盘插入会在terminal里打印 im comming