Thursday, July 24, 2014

What device is mapped as Oracle ASM disk?

for i in `ls -l /dev/oracleasm/disks | grep oracle | awk '{print $NF","substr($5,1,length($5)-1)","$6}'`
do
        ASM_DEVICE_NAME=`echo $i|awk '{print $1}' FS=","`
        MAJOR_NUMBER=`echo $i|awk '{print $2}' FS=","`
        MINOR_NUMBER=`echo $i|awk '{print $3}' FS=","`
        HOST_DEVICE=`ls -l /dev/ | grep " "${MAJOR_NUMBER}", *"${MINOR_NUMBER}" " | awk '{print $NF}'`
        echo $HOSTNAME"|"$ASM_DEVICE_NAME"|/dev/"$HOST_DEVICE
done

------------------------------------------------------------------

[grid@oel62-rac1 ~]$ oracleasm listdisks
ASMDISK01
ASMDISK02
ASMDISK03
ASMDISK04
ASMDISK05
[grid@oel62-rac1 ~]$ 

If you want find which ASM disk is mapped which device, then you must use oracleasm querydisk with ASM disk name.

[grid@oel62-rac1 ~]$ oracleasm querydisk -d ASMDISK01
Disk "ASMDISK01"  Is a valid ASM disk On device[8,17] 

As see you, ASMDISK01 is valid ASM disk on device [8,17].

What is means?


It means ASMDISK01 is mapped to device [8,17].

How to find [8,17] device?


We must use Linux ls –l  command as below.

[grid@oel62-rac1 ~]$ ls -l /dev/* | grep 8, | grep 17
brw-rw----  1 root disk  8,  17 Apr 16 15:27 

Now, we can say ASMDISK01 is mapped to /dev/sdb1.
--------------------------------------
# ls -ls /dev/oracleasm/disks/ASMDISK*
0 brw-rw—- 1 grid asmadmin 8, 17 Apr 12 18:43 /dev/oracleasm/disks/ASMDISK01
0 brw-rw—- 1 grid asmadmin 8, 18 Apr 12 18:43 /dev/oracleasm/disks/ASMDISK02
2 columns after group (asmadmin) refer to major/minor
e.g. for ASMDISK01 major = 8, minor = 17
– see the contents of /proc/partitions to find which partition is mapped to which major/minor
# cat /proc/partitions
major minor #blocks name
8 0 83886080 sda
8 1 104391 sda1
8 2 5116702 sda2
8 3 5116702 sda3
8 4 1 sda4
8 5 73545538 sda5
8 16 93487104 sdb
8 17 4008186 sdb1
8 18 4008217 sdb2
8 19 4008217 sdb3
8 20 1 sdb4

8 29 4008186 sdb13
8 30 4008186 sdb14
8 31 4008186 sdb15
Here sdb1 is mapped to major 8 and minor 17
Hence, partition /dev/sdb1 is mapped to ASMDISK01.

No comments:

Post a Comment