Hi Ruddy:
The 2nd and third steps ( which used the offsite routine) will select all copypool
volumes with not offsite access, check them out - then change thier status. This
script is called by another script which 1st backs up the db and other config files.
For returns I use ACCESS and the ODBC driver and generate a report for operations
based on this select:
SELECT VOLUMES.VOLUME_NAME, VOLUMES.PCT_UTILIZED, VOLUMES.STATUS, VOLUMES.ACCESS,
VOLUMES.PCT_RECLAIM, VOLUMES.LAST_WRITE_DATE, VOLUMES.LAST_READ_DATE, VOLUMES.CHG_TIME
FROM VOLUMES
WHERE (((VOLUMES.PCT_UTILIZED)=0) AND ((VOLUMES.ACCESS)="OFFSITE") AND
((VOLUMES.STGPOOL_NAME)="OFFSITEVOLS"));
[backup] /home/root/bin # more backup.adsmserver.files
#!/bin/ksh
# Created: 4/1/99 L.C.
# Last updated: 6/19/99 L.C.
#-------------------------------------------------------
# Performs a backup of /var/adsmdbbk/*
# that hold ADSM file backups needed to recreate
# the ADSM server..........L. Clark
# sent to /dev/rmt2 drive in 7331 8MM tape library
#-------------------------------------------------------
#
DEVICE=/dev/rmt2
DRIVENUM=23
STGPOOL=OFFSITVOLS
export DEVICE DRIVENUM STGPOOL
#
#---------------
MoveIn ()
# Move tape to drive
{
/usr/bin/tapeutil -f /dev/smc0 move -s ${SLOT} -d ${DRIVENUM}
sleep 10
}
#---------------
MoveOut ()
# Unload tape and move back to slot
{
/usr/bin/tapeutil -f ${DEVICE} unload
/usr/bin/tapeutil -f /dev/smc0 move -s ${DRIVENUM} -d ${SLOT}
echo Time: `date +"%T"`
}
#---------------
BackupCmd ()
{
banner $TITLE
echo "==============="
echo Start: `date +"%T"`
echo "===============\n"
# tar -cvf /dev/rmt2.1 /workarea/ADSMBACK/*
tar -cvf /dev/rmt2.1 /var/adsmdbbk
}
#---------------
Offsitetape ()
# - readin tape vol input until EOF
# - issue checkout & then update to offsite
# - for each vol input
{
while read volname; do
echo "FOUND CANDIDATE FOR OFFSITE MIGRATION: "$volname
/home/root/bin/dsmcmd "CHECKO LIBV IBM3494A $volname "
/home/root/bin/dsmcmd "UPDATE VOL $volname ACC=OFFSITE"
done
}
#-------------------------------------------------
# FIRST: CAPTURE ADSM SERVER FILES TO 8MM
SLOT=20
TITLE=ADSM-SERVBK
HOST=backup
MoveIn;BackupCmd;MoveOut;echo "\nOK...\n"
#-------------------------------------------------
echo "==============="
echo End: `date +"%T"`
echo "===============\n"
echo "Done. Check above for errors.\n"
echo "Then remove 8MM tape from SLOT 20.\n"
echo "WRITE DATE ON 8MM TAPE LABEL.\n"
echo "Check the tape library exit / entry port and\n"
echo "package with ADSM 3494(J) offsite data volumes.\n"
#-------------------------------------------------
# SECOND: GET LIST OF ONSITE COPY POOL VOLUMES
/home/root/bin/dsmcmd \
"select volume_name from volumes where stgpool_name='OFFSITEVOLS' \
AND NOT access='OFFSITE'" > SQLTEST
grep "^[000]" SQLTEST > VOLLIST
#------------------------------------------------
# THIRD: CHECK CANDIDATE VOLUMES OUT
Offsitetape < VOLLIST
echo " done reading volume input"
echo " creating DRM PLAN FILE"
rm /home/root/recoveryplan/*
/home/root/bin/dsmcmd "prepare"
sleep 300
lp /home/root/recoveryplan/*
#------------------------------------------------
# FOURTH: FINISH LOG ENTRIES, APPEND DOY, PRINT
rm getday
date +%j>>getday
LOGDAY=$(<getday)
echo "This LOG file is at /workarea/LOGS/ADSM."$LOGDAY
mv /workarea/LOGS/ADSM /workarea/LOGS/ADSM.$LOGDAY
# /home/root/bin/dsmcmd "expire inv"
lp -t"OFFSITE" /workarea/LOGS/ADSM.$LOGDAY
>>> [EMAIL PROTECTED] 10/11/00 09:09AM >>>
Hello,
I would appreciate to avoid re-inventing the wheel :
Does anybody have :
- a procedure, a batch or a script to eject and send off-site, on a
daily basis, tapes used in the Copy Pool ?
- a procedure, a batch or a script to recall off-site empty tapes ?
My server is a RS6/000 and I am running TSM 3.7.3 - I don't use the DRM
module option.
Many many thanks in advane
Ruddy Stouder
System Engineer
I.R.I.S.
Rue du Bosquet 10 - Parc Scientifique de Louvain-La-Neuve
B- 1435 Mont-Saint-Guibert
[EMAIL PROTECTED]
http://www.irislink.com
Tel: +32 (0)10 48 75 10 - Fax: +32 (0)10 48 75 40