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 即可