udev原理和结构 当udev从kernel收到设备add/remove事件后,udev将解析: /etc/udev/rules.d目录中的用户自定义规则文件只用自定义规则输出(可选的) 从sys中查询相应信息 根据解析的信息,udev聚集处理设备命名: 将肯定建立什么设备文件(device file )或符号连接(symlink) 肯定如何设设备文件属性 肯定后续操做
KERNEL==sd* ,PROGRAM=/lib/udev/scsi_id -g -s %p,RESULT==123456,SYMLINK=%k_%c 该规则的的执行是:若是一个内核设备名称以sd开头,且SCSI_ID为123456,则为设备文件产生一个符号连接“sda_123456”
"KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$i
", NAME="asm-disk\(i\", OWNER=\"oracle\", GROUP=\"asmadmin\", MODE=\"0660\"" >> /etc/udev/rules.d/99-oracle-asmdevices.rules 其中这句话的含义是将KERNEL==以sd开头的,BUS是scsi的,PROGRAM接受/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/\$name指令并将结果传递给RESULT, 假如符合上述条件的话,则将该设备命名为 NAME=\"asm-disk\)i",全部者OWNER="oracle", 所属于的组 GROUP="asmadmin", 授予的权限是 GROUP="asmadmin" 并将这些内容写到 /etc/udev/rules.d/99-oracle-asmdevices.rules udev的规则文件中去。html