home *** CD-ROM | disk | FTP | other *** search
/ M.u.C.S. Disc 2000 / MUCS2000.iso / anwend / gemar306 / gemini / backstrm.mup < prev    next >
Text File  |  1997-01-21  |  3KB  |  109 lines

  1. #!mupfel
  2. #
  3. # @(#) BACKSTRM.MUP, Automatisiertes Backup mit GEMAR
  4. # @(#) Roland Behme, 28.01.96
  5. # @(#) wird von BACKTEST.MUP aufgerufen
  6. # @(#) Uwe Mindrup, 13.3.96, Anpassungen
  7. # @(#) Erweiterungen von Uwe Mindrup, 13.03.96
  8. #      Änderungen siehe backpar.mup
  9.  
  10. #============================================================================
  11. # Einige Hilfsfunktionen
  12. #============================================================================
  13.  
  14.   _Create_Alert_GBT()
  15.   # Batch-Datei alert.gbt erzeugen
  16.   # Parameter: $1 = Name des Bandes für die Sicherung
  17.   #            $2 = Art der Sicherung (Vollsicherung, Tagessicherung)
  18.   {
  19.     echo '# @(#) GEMAR-Batchfile   (c) R. Behme' > "$GB_BATCHDIR"\alert.gbt
  20.     echo '# @(#) Backup'                        >> "$GB_BATCHDIR"\alert.gbt
  21.     echo 'WAIT [5][Bitte legen Sie das Band|"' $1 '"|für eine' $2 ' (Set '$3') ein.][ OK |: Abbruch ]2' >> "$GB_BATCHDIR"\alert.gbt
  22.  
  23.     if [ $GB_BATCHTEST = 'TRUE' ]
  24.     then
  25.       echo 'Band "' $1 '" für' $2 '(Set '$3')'
  26.     fi
  27.   }
  28.  
  29.  
  30.   _start_it()
  31.   # GEMAR für Backup starten.
  32.   # Aus GEMAR heraus wird dann BACKLOG.MUP gestartet.
  33.   #
  34.   # Parameter: $1 = Art des Backups (FULL|1STFULL|DAILY|1STDAILY)
  35.   {
  36.     cd "$GB_GEMARDIR" # Zu $GB_GEMARDIR wechseln
  37.  
  38.     case $1 in
  39.       FULL|1STFULL)
  40.            _Create_Alert_GBT "$GB_FULLNAME$GB_AKTGEN" Vollsicherung $(printenv GB_FULLCOUNT_$GB_AKTGEN)
  41.            ;;
  42.       DAILY|1STDAILY)
  43.            _Create_Alert_GBT "$GB_DAILYNAME$GB_AKTGEN" Tagessicherung $(expr $GB_DAILY_CNT + 1)
  44.            ;;
  45.     esac
  46.  
  47.     if [ $GB_BATCHTEST = 'TRUE' ]
  48.     then
  49.       backlog $1                                # Nur Logdateien pflegen
  50.     else
  51.       gemar.app "$GB_BATCHDIR"\alert.gbt "$GB_BATCHDIR"\$1.gbt
  52.     fi
  53.   }
  54.  
  55.  
  56. #============================================================================
  57. # Hier geht es nun los
  58. #============================================================================
  59.  
  60. echo
  61. echo '   Backup durchführen'
  62. echo '   =================='
  63.  
  64. . backpar.mup       # Parameter aus BACKPAR.MUP einlesen
  65.  
  66. # Ist das letzte Full-Backup länger als "$GB_FULLDAYS" Tage her?
  67. if [ $(expr $(_today) - $GB_LASTFULLBACKUP) -ge $GB_FULLDAYS ] || ( [ -n $1 ] && [ $1 = 'FULL' ] )
  68. then
  69.   echo
  70.   echo 'Full-Backup ist in Arbeit'
  71.   echo
  72.  
  73.   # Generationenzähler aktualisieren:
  74.   setenv GB_AKTGEN `expr "$GB_AKTGEN" + 1`
  75.   if [ "$GB_AKTGEN" -gt "$GB_MAXGEN" ]
  76.   then
  77.     setenv GB_AKTGEN 1
  78.   fi
  79.  
  80.   echo 'aktuelle Generation:' "$GB_AKTGEN"
  81.  
  82.   # welche Index-nummer wird das werden?
  83.   _IncrFullCount
  84.  
  85.   if [ "$GB_FULLCOUNT" -eq 1 ]
  86.   then
  87.     _start_it 1STFULL
  88.   else
  89.     _start_it FULL
  90.   fi
  91. else
  92.   echo
  93.   echo 'Daily-Backup ist in Arbeit'
  94.   echo
  95.   echo 'aktuelle Generation:' "$GB_AKTGEN"
  96.  
  97.   # Mal sehen ob's das erste Daily nach einem Full ist...
  98.   if [ "$GB_DAILY_CNT" -eq 0 ]
  99.   then
  100.     _start_it 1STDAILY
  101.   else
  102.     _start_it DAILY
  103.   fi
  104. fi
  105.  
  106. # Pfad restaurieren
  107. echo
  108. echo 'Sie haben ein einfaches Script sehr glücklich gemacht.'
  109. echo