在RHEL6_Oracle_Linux_6上生成正确的udev_rule_规则文件

1.

#首先确认是 Linux 6.0以上版本

[root@vrh6 dev]# cat /etc/issue          
Oracle Linux Server release 6.2
Kernel on an m

2.

#添加记录到/etc/scsi_id.config

echo "options=--whitelisted --replace-whitespace"  >> /etc/scsi_id.config

3.

#确认哪些块设备需要udev绑定

[root@vrh6 dev]# ls -l sd*
brw-rw----. 1 root disk 8,  0 Jun 30 09:29 sda
brw-rw----. 1 root disk 8,  1 Jun 30 09:29 sda1
brw-rw----. 1 root disk 8,  2 Jun 30 09:29 sda2
brw-rw----. 1 root disk 8, 16 Jun 30 09:29 sdb
brw-rw----. 1 root disk 8, 32 Jun 30 09:29 sdc
brw-rw----. 1 root disk 8, 48 Jun 30 09:29 sdd
brw-rw----. 1 root disk 8, 64 Jun 30 09:29 sde
brw-rw----. 1 root disk 8, 80 Jun 30 09:29 sdf

例如在本实例中 sdb-> sdf的块设备需要绑定

4. 将 b->f的编号放入for 循环中,例如:


# AUTO UDEV RULE BY Maclean Liu 2012/06/30
for i in b c d e f ;
do
echo "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="grid", GROUP="asmadmin", MODE="0660""      
done



就会生成sdb->sdf 设备绑定的RULE,在将这些RULE写入到/etc/udev/rules.d/99-oracle-asmdevices.rules中

也可以直接利用以下脚本 ,写出RULE到99-oracle-asmdevices.rules


# AUTO UDEV RULE BY 2012/06/30
for i in b c d e f ;
do
echo "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="grid", GROUP="asmadmin", MODE="0660""      >> /etc/udev/rules.d/99-oracle-asmdevices.rules
done

IBM 多路径的配置

for i in b c d e f g h i j k ;
do
echo "ENV{DM_NAME}=="mpath$i", OWNER:="grid", GROUP:="asmadmin", MODE:="0660",SYMLINK+="iscsi/asm-$env{DM-NAME}""      >> /etc/udev/rules.d/12-dm-permissions.rules
done


5. 之后运行用root运行/sbin/start_udev  即可

原文地址:https://www.cnblogs.com/Kconnie/p/4584255.html