2016-09-22 shark 华仙教先知小凡仙海鲨金融科技
在使用ORACLE LINUX 6 或者是RED HAT LINUX 6的时候 不需要ASMLIB来搞ASM盘了.
假如你用ORACLE公司的VBOX 虚拟机? 并且使用SCSI总线共享磁盘 那么使用下面的脚本
1.
首先确认是 Linux 6.0以上版本
[root@vrh6 dev]# cat /etc/issue
Oracle Linux Server release 6.2
Kernel \r 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的块设备需要绑定
- 将 b->f的编号放入for 循环中,例如:
AUTO UDEV RULE BY SHARK 2015/08/15
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 SHARK 2015/08/15
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
之后运行用root运行/sbin/start_udev 即可
实际运行示例:
[root@vrh6 dev]# echo “options=–whitelisted –replace-whitespace” >> /etc/scsi_id.config
[root@vrh6 dev]# 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
[root@vrh6 dev]#
[root@vrh6 dev]# cat /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL==”sd*”, BUS==”scsi”, PROGRAM==”/sbin/scsi_id –whitelisted –replace-whitespace –device=/dev/
name”,RESULT==”1ATAVBOXHARDDISKVB09cadb31−cfbea255”,NAME=”asm−diskb”,OWNER=”grid”,GROUP=”asmadmin”,MODE=”0660”KERNEL==”sd∗”,BUS==”scsi”,PROGRAM==”/sbin/scsiid–whitelisted–replace−whitespace–device=/dev/
name”, RESULT==”1ATA_VBOX_HARDDISK_VB5f097069-59efb82f”, NAME=”asm-diskc”, OWNER=”grid”, GROUP=”asmadmin”, MODE=”0660”
KERNEL==”sd*”, BUS==”scsi”, PROGRAM==”/sbin/scsi_id –whitelisted –replace-whitespace –device=/dev/
name”,RESULT==”1ATAVBOXHARDDISKVB4e1a81c0−20478bc4”,NAME=”asm−diskd”,OWNER=”grid”,GROUP=”asmadmin”,MODE=”0660”KERNEL==”sd∗”,BUS==”scsi”,PROGRAM==”/sbin/scsiid–whitelisted–replace−whitespace–device=/dev/
name”, RESULT==”1ATA_VBOX_HARDDISK_VBdcce9285-b13c5a27”, NAME=”asm-diske”, OWNER=”grid”, GROUP=”asmadmin”, MODE=”0660”
KERNEL==”sd*”, BUS==”scsi”, PROGRAM==”/sbin/scsi_id –whitelisted –replace-whitespace –device=/dev/$name”, RESULT==”1ATA_VBOX_HARDDISK_VB82effe1a-dbca7dff”, NAME=”asm-diskf”, OWNER=”grid”, GROUP=”asmadmin”, MODE=”0660”
[root@vrh6 dev]#
[root@vrh6 dev]# /sbin/start_udev
Starting udev: [ OK ]
[root@vrh6 dev]# ls -l asm*
brw-rw—-. 1 grid asmadmin 8, 16 Jun 30 09:34 asm-diskb
brw-rw—-. 1 grid asmadmin 8, 32 Jun 30 09:34 asm-diskc
brw-rw—-. 1 grid asmadmin 8, 48 Jun 30 09:34 asm-diskd
brw-rw—-. 1 grid asmadmin 8, 64 Jun 30 09:34 asm-diske
brw-rw—-. 1 grid asmadmin 8, 80 Jun 30 09:34 asm-diskf
最后你可以把所有的操作步骤整合在一个脚本里去