Rebuilding a Netbackup environment with a fresh start
Written by: J Dawg
While performing some disaster recovery testing, I wanted to be able to rebuild our netbackup 7.5 environment before going thru the restore process. My goal was to remove all media from the NBU EMM database, remove all tape drives and robot configuration then rebuild. Came up with the following script to do that and it worked just as expected.
#!/bin/ksh delete_drives() { /usr/openv/volmgr/bin/vmglob -listall | perl -ne 'print if /device type:\s*robot/../robot number:/ ' | while read line do if [ "`echo $line | grep '^serial number:'" ]; then serialnum=`echo $line | awk '{print $3}'` fi if [ "`echo $line | grep '^hostname:'" ]; then vhostname=`echo $line | awk '{print $2}'` fi if [ "`echo $line | grep '^robot number:'" ]; then robotnum=`echo $line | awk '{print $3}'` /usr/openv/volmgr/bin/vmglob -delete -robot -serial $serialnum -robnum $robotnum -devhost $vhostname fi # echo $line done } delete_robots() { /usr/openv/volmgr/bin/vmglob -listall | perl -ne 'print if /device type:\s*drive/../drive type:/ ' | while read line do if [ "`echo $line | grep '^serial number:'" ]; then serialnum=`echo $line | awk '{print $3}'` fi if [ "`echo $line | grep '^hostname:'" ]; then vhostname=`echo $line | awk '{print $2}'` fi if [ "`echo $line | grep '^device name:'" ]; then drivename=`echo $line | awk '{print $3}'` fi if [ "`echo $line | grep '^drive type:'" ]; then drvtype=`echo $line | awk '{print $3}'` /usr/openv/volmgr/bin/vmglob -delete -drive -drvtype $drvtype -serial $serialnum -name $drivename -devhost $vhostname fi done } # Delete all tape drives # tpconfig -l | grep hcart | awk '{print $3}'|sort -u | nawk '{system("tpconfig -delete -drive "$1)}' delete_drives # Delete all robots # tpconfig -l | grep robot | awk '{print $2}'|sort -u | nawk '{system("tpconfig -delete -robot "$1)}' delete_robots # Run autoconfig /usr/openv/volmgr/bin/tpautoconf -a -v # restart ltid /usr/openv/volmgr/bin/stopltid sleep 4 /usr/openv/volmgr/bin/ltid robot=`/usr/openv/volmgr/bin/tpconfig -l|grep robot|awk '{print $2}'` # Cleanup media id's # hummm, dont remember why we need this /usr/openv/volmgr/bin/vmquery -h `hostname` -a | grep "media ID:"|grep T | nawk '{system("/usr/openv/volmgr/bin/vmdelete -m "$3)}' # Inventory robot /usr/openv/volmgr/bin/vmupdate -rn $robot -rt TLD -rh `hostname`
This code bit was run on a Solaris 10 Sparc system but I bet it could be run on any other Unix system.
Leave a Reply
You must be logged in to post a comment.