#!/bin/ksh
function Usage
{
echo
echo "Usage: verify_asm_lun.ksh [-d] [-f] [-l] [-h] [-s]
[-h] Help
[-l] Name of LUN
[-f] File name containing list of LUNS
[-d] Name of asm diksgroup to which LUN is to be added
[-s] Run in batch mode checking all exiting asm devices
"
exit 1
}
################################################################################
# Variables
################################################################################
typeset DEVICE_LOCATION=/dev/oracle
################################################################################
# Get information for asm disk and ask disk path from asm
################################################################################
lun_list() {
sqlplus -s / as sysdba << _SQL_
set pagesize 0 newpage 0 feedback off linesize 132 echo on
col dbname format a10
col name format a22
col path format a45
select substr(name,1,instr(name,'_')-1) as dbname,
name as name,
path as path
from v\$asm_disk
where name is not null
and name not like 'OCR%'
order by 1;
_SQL_
}
################################################################################
# Derive LUN/ASMDISK and device name information used by Currently used by ASM
################################################################################
asm_lun=$(lun_list)
################################################################################
# Derive device name information NOTR used by ASM
################################################################################
#nonasm_lun=`vxprint | grep dm | awk '{print $3}'`
#echo "Non ASM LUN : ${nonasm_lun}"
#echo "${asm_lun}" | while read DBNAME NAME ASMLUN
#do
#echo "BEFORE: $ASMLUN"
#lun_dev=`echo $ASMLUN | cut -d . -f2`
#echo "AFTER: $lun_dev"
#lun_dev=emc0_2a3a
# echo "${nonasm_lun}" | while read NONASMLUN
# do
# echo "Inside Loop 2 : ${lun_dev} : $NONASMLUN "
# if [[ $lun_dev == $NONASMLUN ]] then
# echo "Yeah Man"
# fi
# done
#dev_name=`ls -l $ASMLUN | awk '{print $11}'`
#wwwid=`grep $lun_dev /etc/vx/disk.info | awk '{print $1}'`
#echo $DBNAME $NAME $ASMLUN $dev_name $wwwid
#done
################################################################################
#
# Function : GetLunList
#
################################################################################
GetLunList() {
typeset DEVICELIST=`ls -l /dev/oracle | grep asmdat | awk '{print $9}' | cut -d . -f2`
}
################################################################################
#
# Function : CheckAllASMDevices
#
################################################################################
CheckAllASMDevices() {
GetLunList
echo "Here We Go"
}
################################################################################
#
# Main Section of script
#
################################################################################
if [ $# -lt 1 ]; then
Usage
exit 1
fi
while getopts "d:f:l:h:s" opt; do
case $opt in
d) cDiskGroupName=${OPTARG};
echo "$cDiskGroupName";;
# CheckAsmDiskGroup;;
f) cCheckFile=${OPTARG};
echo "$cCheckFile";;
# CheckFile;;
l) cCheckLun=${OPTARG};
echo "$cCheckLun";;
# CheckLun;;
s) CheckAllASMDevices;;
h) Usage;;
*) Usage;;
esac
done;
No comments:
Post a Comment