Centralize variables for all scripts: .env file
# global variables for all scripts export binpath=/root/script/bin export sn=`basename $0 | cut -d. -f1` export HOSTNAME=`hostname` export logpath=/root/script/log export logname=$logpath/$sn.log export configfile=$binpath/$sn.cfg export destination="test@test.com"
File_name:
mksysb_all_nim_clients.sh
Create mksysb for all NIM clients:
#!/bin/ksh
#set -x
#############################################
#@(#) Create a mksysb for all NIM clients
#############################################
# version 1.0 21-09-2015
#############################################
dir=`dirname $0`
. $dir/.env
mksysbpath=/export/mksysb
main ()
{
date "+%d-%m-%Y %H:%m" 
allhost=$(lsnim -t standalone | sort | awk '{print $1}')
for client in $allhost
do
  print "*****************************************"
  print "Remove old spot and mksysb for host $client"
  if [ $(lsnim -t spot | awk '{print $1}' | grep "spot_${client}" > /dev/null 2>&1;echo $?) -eq 0 ]
  then
    nim -o remove spot_${client}
  fi
  if [ $(lsnim -t mksysb | awk '{print $1}' | grep "mksysb_${client}" > /dev/null 2>&1;echo $?) -eq 0 ]
  then
    nim -o remove -a rm_image=yes mksysb_${client}
  fi
  nim -o define -t mksysb -a server=master -a source=$client -a mk_image=yes -a location=$mksysbpath/mksysb.${client} -a mksysb_flags=Xie mksysb_${client}
  if [ $? -ne 0 ]
  then
    print "*****************************************"
    print "** ERROR mksysb Failed on host $client **"
    print "*****************************************"
  else
    print "** mksysb Successful on host $client $(du -sg $mksysbpath/mksysb.${client} | awk '{print $1}') GB **"
  fi
done
date "+%d-%m-%Y %H:%m" 
}
main | tee $logname 2>&1