Table of Contents
Script details
SHELL script: asmcmd_collect_all_NEW.sh
#!/bin/bash
################################################################################################
### The next script generates additional ASM metadata information thru the ASMCMD interface ###
################################################################################################
### Author: Esteban D. Bernal ###
################################################################################################
### Property: Oracle Corporation ###
################################################################################################
OUTFILE=./asmcmd_script.OUT
echo "ASMCMD commands to gather complementary metadata information:" > $OUTFILE 2> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p ls -ls"
echo \$ $cmd --- display extended file information >> $OUTFILE ; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p lsattr --- "
# echo \$ $cmd >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
for DG in `asmcmd lsdg --suppressheader | awk ' { print substr($13 , 1, length($13)-1)}' `
do
echo Attributes for Diskgroup : $DG >> $OUTFILE
cmd="asmcmd lsattr -G $DG -l"
echo \$ $cmd >> $OUTFILE ; $cmd >> $OUTFILE 2>> $OUTFILE
echo ------------------------------------------ >> $OUTFILE
done
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p lsct "
echo \$ $cmd --- Lists information about current Oracle ASM clients from the V\$ASM_CLIENT view >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p lsdg "
echo \$ $cmd --- List Diskgroup details >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p lsdsk "
echo \$ $cmd --- List ASM disk details >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p lsof "
echo \$ $cmd --- Lists the open files of the local clients >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p lsod"
echo \$ $cmd --- Lists the open Oracle ASM disks >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p iostat"
echo \$ $cmd --- Displays I/O statistics for Oracle ASM disks in mounted disk groups >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p dsget"
echo \$ $cmd --- Retrieves the discovery diskstring value that is used by the Oracle ASM instance and its clients >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p lsop"
echo \$ $cmd --- Lists the current operations on a disk group in an Oracle ASM instance >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p spget"
echo \$ $cmd --- Retrieves the location of the Oracle ASM SPFILE from the GPnP profile >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
for DG in `asmcmd lsdg --suppressheader | awk ' { print substr($13 , 1, length($13)-1)}' `
do
echo Templates for Diskgroup : $DG >> $OUTFILE
cmd="asmcmd lstmpl -G $DG "
echo \$ $cmd >> $OUTFILE ; $cmd >> $OUTFILE 2>> $OUTFILE
echo ------------------------------------------ >> $OUTFILE
done
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
for DG in `asmcmd lsdg --suppressheader | awk ' { print substr($13 , 1, length($13)-1)}' `
do
echo List ASM users in Diskgroup : $DG >> $OUTFILE
cmd="asmcmd lsusr -G $DG "
echo \$ $cmd >> $OUTFILE ; $cmd >> $OUTFILE 2>> $OUTFILE
echo ------------------------------------------ >> $OUTFILE
done
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p lsgrp -a "
echo \$ $cmd --- Lists all Oracle ASM user groups >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
cmd="asmcmd -p lspwusr"
echo \$ $cmd --- List the users from the local Oracle ASM password file >> $OUTFILE; $cmd >> $OUTFILE 2>> $OUTFILE
echo "==================================" >> $OUTFILE 2>> $OUTFILE
echo " " >> $OUTFILE 2>> $OUTFILE
# cmd="asmcmd -p volinfo -a"
for DG in `asmcmd lsdg --suppressheader | awk ' { print substr($13 , 1, length($13)-1)}' `
do
echo List ASM users in Diskgroup : $DG >> $OUTFILE
cmd="asmcmd -p volinfo -G $DG -a "
echo \$ $cmd >> $OUTFILE ; $cmd >> $OUTFILE 2>> $OUTFILE
echo ------------------------------------------ >> $OUTFILE
done
cat $OUTFILE