home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
M.u.C.S. Disc 2000
/
MUCS2000.iso
/
anwend
/
gemar306
/
gemini
/
backstrm.mup
< prev
next >
Wrap
Text File
|
1997-01-21
|
3KB
|
109 lines
#!mupfel
#
# @(#) BACKSTRM.MUP, Automatisiertes Backup mit GEMAR
# @(#) Roland Behme, 28.01.96
# @(#) wird von BACKTEST.MUP aufgerufen
# @(#) Uwe Mindrup, 13.3.96, Anpassungen
# @(#) Erweiterungen von Uwe Mindrup, 13.03.96
# Änderungen siehe backpar.mup
#============================================================================
# Einige Hilfsfunktionen
#============================================================================
_Create_Alert_GBT()
# Batch-Datei alert.gbt erzeugen
# Parameter: $1 = Name des Bandes für die Sicherung
# $2 = Art der Sicherung (Vollsicherung, Tagessicherung)
{
echo '# @(#) GEMAR-Batchfile (c) R. Behme' > "$GB_BATCHDIR"\alert.gbt
echo '# @(#) Backup' >> "$GB_BATCHDIR"\alert.gbt
echo 'WAIT [5][Bitte legen Sie das Band|"' $1 '"|für eine' $2 ' (Set '$3') ein.][ OK |: Abbruch ]2' >> "$GB_BATCHDIR"\alert.gbt
if [ $GB_BATCHTEST = 'TRUE' ]
then
echo 'Band "' $1 '" für' $2 '(Set '$3')'
fi
}
_start_it()
# GEMAR für Backup starten.
# Aus GEMAR heraus wird dann BACKLOG.MUP gestartet.
#
# Parameter: $1 = Art des Backups (FULL|1STFULL|DAILY|1STDAILY)
{
cd "$GB_GEMARDIR" # Zu $GB_GEMARDIR wechseln
case $1 in
FULL|1STFULL)
_Create_Alert_GBT "$GB_FULLNAME$GB_AKTGEN" Vollsicherung $(printenv GB_FULLCOUNT_$GB_AKTGEN)
;;
DAILY|1STDAILY)
_Create_Alert_GBT "$GB_DAILYNAME$GB_AKTGEN" Tagessicherung $(expr $GB_DAILY_CNT + 1)
;;
esac
if [ $GB_BATCHTEST = 'TRUE' ]
then
backlog $1 # Nur Logdateien pflegen
else
gemar.app "$GB_BATCHDIR"\alert.gbt "$GB_BATCHDIR"\$1.gbt
fi
}
#============================================================================
# Hier geht es nun los
#============================================================================
echo
echo ' Backup durchführen'
echo ' =================='
. backpar.mup # Parameter aus BACKPAR.MUP einlesen
# Ist das letzte Full-Backup länger als "$GB_FULLDAYS" Tage her?
if [ $(expr $(_today) - $GB_LASTFULLBACKUP) -ge $GB_FULLDAYS ] || ( [ -n $1 ] && [ $1 = 'FULL' ] )
then
echo
echo 'Full-Backup ist in Arbeit'
echo
# Generationenzähler aktualisieren:
setenv GB_AKTGEN `expr "$GB_AKTGEN" + 1`
if [ "$GB_AKTGEN" -gt "$GB_MAXGEN" ]
then
setenv GB_AKTGEN 1
fi
echo 'aktuelle Generation:' "$GB_AKTGEN"
# welche Index-nummer wird das werden?
_IncrFullCount
if [ "$GB_FULLCOUNT" -eq 1 ]
then
_start_it 1STFULL
else
_start_it FULL
fi
else
echo
echo 'Daily-Backup ist in Arbeit'
echo
echo 'aktuelle Generation:' "$GB_AKTGEN"
# Mal sehen ob's das erste Daily nach einem Full ist...
if [ "$GB_DAILY_CNT" -eq 0 ]
then
_start_it 1STDAILY
else
_start_it DAILY
fi
fi
# Pfad restaurieren
echo
echo 'Sie haben ein einfaches Script sehr glücklich gemacht.'
echo