asmcmd_collect_all_NEW.sh

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

Script OUTPUT

Leave a Reply

Your email address will not be published. Required fields are marked *