#!/usr/bin/ksh # This script is made by Hannu Valtanen 22.11.2000 # Hannu Valtanen Oy # http://www.valtanen.com # hannu@valtanen.com # Use this script at your own risk. usage() { echo "$(basename $0) -d|-t tape_device|-r " 1>&2 echo " -d VGs Backup Diskette" 1>&2 echo " -t tape_device AIX and VGs Tape" 1>&2 echo " -r Remove old VG backups." 1>&2 exit 1 } TA=off DI=off RE=off BA=off while getopts ':dtr' OPTION do case $OPTION in d) DI=on BA=on;; t) TA=on BA=on;; r) RE=on ;; :) echo "$NAME: A flag requires a parameter: $OPTARG" 1>&2 usage ;; \?) [[ "$OPTARG" != '?' ]] && echo "$NAME: Not a recognized flag: $OPTARG" 1>&2 usage ;; esac done shift OPTIND-1 [[ "$TA" = "off" && "$DI" = "off" && "$RE" = "off" ]] && usage [[ "$TA" = "on" ]] && (($#!=1)) && usage if [[ "$TA" = "on" ]] then OK=false for X in $(lsdev -Cctape|grep " Available "|awk '{print $1}') do [[ "$X" = "$1" || "/dev/$X" = "$1" ]] && OK=true done [[ "$OK" = "false" ]] && usage TAPE=/dev/$(basename $1) fi if [[ "$RE" = "on" ]] then rm /etc/savevg.* 2> /dev/null fi [[ "$BA" = "off" ]] && exit touch /etc/savevg.$(date '+%d%m%Y') for VG in $(lsvg -o|grep -v "^rootvg$") do lsvg -l $VG|awk '{print $NF}'|grep "^/" > /etc/exclude.$VG /usr/bin/savevg -f /etc/savevg.$VG.$(date '+%d%m%Y') '-i' '-e' '-X' $VG done if [[ "$DI" = "on" ]] then ls /etc/savevg.* > /tmp/bvg.$$ echo "/etc/bvg /etc/rvg" >> /tmp/bvg.$$ cat /tmp/bvg.$$|backup -ivpq rm /tmp/bvg.$$ fi if [[ "$TA" = "on" ]] then /usr/bin/mksysb '-i' '-X' $TAPE tctl -f $TAPE offline fi