在RHEL6.上用UDEV配置ASM,参考了这篇文章How to use udev for Oracle ASM in Oracle Linux 6 不同的操作系统或者同一个操作系统的不同版本,scsi_id的用法不一样。我这里的环境主要是RHEL6.0步骤如下:1. 编辑/etc/scsi_id.config文件,如果该文件不存在,则创建该文件,添加如下行:
[[email protected] ~]# vi /etc/scsi_id.configoptions=�whitelisted �replace-whitespace
2. 获取需要绑定为ASM Disk的磁盘uuid,比如我们要使用/dev/sdc和/dev/sdd作为ASM磁盘,那么:
[[email protected] ~]# scsi_id �whitelisted �replace-whitespace �device=/dev/sdc
1ATA_VBOX_HARDDISK_VB36a9e548-1838194a
[[email protected] ~]# scsi_id �whitelisted �replace-whitespace �device=/dev/sdd
1ATA_VBOX_HARDDISK_VB9808fc7f-cdf35030
3.编写udev rules文件,PROGRAM中写scsi_id命令,RESULT中写上面命令中返回的uuid,这跟OEL5中没什么区别,只是scsi_id命令的语法发生变化了。
[[email protected] ~]# vi /etc/udev/rules.d/99-oracle-asmdevices.rulesKERNEL==”sd*”, SUBSYSTEM==”block”, PROGRAM==”/sbin/scsi_id �whitelisted �replace-whitespace �device=/dev/$name”, RESULT==”1ATA_VBOX_HARDDISK_VB36a9e548-1838194a”, NAME=”asm-disk1″, OWNER=”grid”, GROUP=”asmadmin”, MODE=”0660″KERNEL==”sd*”, SUBSYSTEM==”block”, PROGRAM==”/sbin/scsi_id �whitelisted �replace-whitespace �device=/dev/$name”, RESULT==”1ATA_VBOX_HARDDISK_VB9808fc7f-cdf35030″, NAME=”asm-disk2″, OWNER=”grid”, GROUP=”asmadmin”, MODE=”0660″
4. 用udevadm进行测试,注意udevadm命令不接受/dev/sdc这样的挂载设备名,必须是使用/sys/block/sdc这样的原始设备名。
[[email protected] ~]# udevadm test /sys/block/sdc[[email protected] ~]# udevadm info �query=all �path=/sys/block/sdc[[email protected] ~]# udevadm info �query=all �name=asm-disk1
在显示中,有类似如下输出,表示测试正确,/dev/sdc设备在udev启动以后将会绑定为/dev/asm-disk1:
udevadm_test: UDEV_LOG=6udevadm_test: DEVPATH=/devices/pci0000:00/0000:00:0d.0/host4/target4:0:0/4:0:0:0/block/sdcudevadm_test: MAJOR=8udevadm_test: MINOR=32udevadm_test: DEVNAME=/dev/asm-disk1udevadm_test: DEVTYPE=diskudevadm_test: ACTION=addudevadm_test: SUBSYSTEM=block
5. 启动udev
[[email protected] ~]# /sbin/start_udev
6. 检查设备是否正确绑定
[[email protected] ~]# ls -l /dev/asm*
brw-rw―- 1 grid asmadmin 8, 32 Oct 26 21:24 /dev/asm-disk1brw-rw―- 1 grid asmadmin 8, 48 Oct 26 21:17 /dev/asm-disk2
7.使用脚本生成99-oracle-asmdevices.rules
for i in b c ;doecho “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.rulesdone
(原文转自:幸福这一站http://www.tianqingbo.com/rhel-udev-asm.html)