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
#添加记录到/etc/scsi_id.config
echo “options=–whitelisted --replace-whitespace” >> /etc/scsi_id.config
#确认哪些块设备需要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/
n
a
m
e
"
,
R
E
S
U
L
T
=
=
"
1
A
T
A
V
B
O
X
H
A
R
D
D
I
S
K
V
B
09
c
a
d
b
31
−
c
f
b
e
a
255
"
,
N
A
M
E
=
"
a
s
m
−
d
i
s
k
b
"
,
O
W
N
E
R
=
"
g
r
i
d
"
,
G
R
O
U
P
=
"
a
s
m
a
d
m
i
n
"
,
M
O
D
E
=
"
0660
"
K
E
R
N
E
L
=
=
"
s
d
∗
"
,
B
U
S
=
=
"
s
c
s
i
"
,
P
R
O
G
R
A
M
=
=
"
/
s
b
i
n
/
s
c
s
i
i
d
−
−
w
h
i
t
e
l
i
s
t
e
d
−
−
r
e
p
l
a
c
e
−
w
h
i
t
e
s
p
a
c
e
−
−
d
e
v
i
c
e
=
/
d
e
v
/
name", RESULT=="1ATA_VBOX_HARDDISK_VB09cadb31-cfbea255", NAME="asm-diskb", OWNER="grid", GROUP="asmadmin", MODE="0660" 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/
n
a
m
e
"
,
R
E
S
U
L
T
=
=
"
1
A
T
A
V
B
O
X
H
A
R
D
D
I
S
K
V
B
4
e
1
a
81
c
0
−
20478
b
c
4
"
,
N
A
M
E
=
"
a
s
m
−
d
i
s
k
d
"
,
O
W
N
E
R
=
"
g
r
i
d
"
,
G
R
O
U
P
=
"
a
s
m
a
d
m
i
n
"
,
M
O
D
E
=
"
0660
"
K
E
R
N
E
L
=
=
"
s
d
∗
"
,
B
U
S
=
=
"
s
c
s
i
"
,
P
R
O
G
R
A
M
=
=
"
/
s
b
i
n
/
s
c
s
i
i
d
−
−
w
h
i
t
e
l
i
s
t
e
d
−
−
r
e
p
l
a
c
e
−
w
h
i
t
e
s
p
a
c
e
−
−
d
e
v
i
c
e
=
/
d
e
v
/
name", RESULT=="1ATA_VBOX_HARDDISK_VB4e1a81c0-20478bc4", NAME="asm-diskd", 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
最后你可以把所有的操作步骤整合在一个脚本里去
!)