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

  1. #!mupfel
  2. #
  3. # @(#) BACKLOG.MUP, Automatisiertes Backup mit GEMAR
  4. # @(#) Roland Behme, 28.01.96
  5. # @(#) Aktualisiert die LOG-Dateien
  6. # @(#) Erweiterungen von Uwe Mindrup, 13.03.96
  7. #      Änderungen siehe backpar.mup
  8.  
  9. # Parameter einlesen (für GBT-Aufruf direkt aus Gemar)
  10. . backpar.mup
  11.  
  12.   _ClearMainLog()
  13.   # Löschen eines Bandes aus GB_LOG
  14.   # Parameter:
  15.   #   $* : Name des zu suchenden Backups
  16.   #
  17.   {
  18.     if gawk '{if (index($0, "'"$*"'") == 0) print }' $GB_LOG > $TMPDIR\backlog.tmp
  19.     then
  20.       cp $TMPDIR\backlog.tmp $GB_LOG
  21.       rm $TMPDIR\backlog.tmp
  22.     fi
  23.   }
  24.  
  25.  
  26.  
  27. if [ $GB_BATCHTEST = 'TRUE' ]
  28. then
  29.   echo backlog.mup: $1
  30. fi
  31.  
  32. case $1 in
  33.   FULL|1STFULL)     # Fullbackup
  34.  
  35.       # Generationenzähler aktualisieren:
  36.       setenv GB_AKTGEN `expr "$GB_AKTGEN" + 1`
  37.       if [ "$GB_AKTGEN" -gt "$GB_MAXGEN" ]
  38.       then
  39.         setenv GB_AKTGEN 1
  40.       fi
  41.  
  42.       _IncrFullCount          # FullCounter aktualisieren
  43.       setenv GB_DAILY_CNT 0   # Tages-Backupzähler zurücksetzen
  44.  
  45.       setenv GB_LOGFILE $GB_LOGDIR\full.$GB_AKTGEN
  46.       setenv GB_NAME    "$GB_FULLNAME$GB_AKTGEN"
  47.       setenv GB_SEQUENZ $GB_FULLCOUNT
  48.  
  49.       if [ $1 = '1STFULL' ]
  50.       then
  51.         _MakeLogFile                # zugehörige Logdatei neu anlegen
  52.         _ClearMainLog $GB_NAME      # und das Band aus dem Mainlog entfernen
  53.       fi
  54.  
  55.       GB_LASTFULLBACKUP=$(_today)
  56.  
  57.       ;;
  58.   DAILY|1STDAILY)   # 1stDaily und Dailybackup:
  59.  
  60.       setenv GB_LOGFILE $GB_LOGDIR\daily.$GB_AKTGEN
  61.  
  62.       if [ $1 = '1STDAILY' ]
  63.       then
  64.         setenv GB_DAILY_CNT 0       # Tages-Backupzähler zurücksetzen
  65.         _MakeLogFile                # zugehörige Logdatei neu anlegen
  66.         _ClearMainLog $GB_NAME      # und das Band aus dem Mainlog entfernen
  67.       fi
  68.  
  69.       setenv GB_DAILY_CNT `expr "$GB_DAILY_CNT" + 1`   # Tages-Backupzähler erhöhen
  70.       setenv GB_SEQUENZ $GB_DAILY_CNT
  71.       setenv GB_NAME    "$GB_DAILYNAME$GB_AKTGEN"
  72.       ;;
  73.   *)
  74.       echo backlog.mup: unbekannter Logging-Parameter: $1
  75.       ;;
  76. esac
  77.  
  78. GB_LASTDAILYBACKUP=$(_today)
  79.  
  80. # Auswertung
  81. # Blockgrö₧e aus GEMAR.PAR holen
  82. GB_BLKSIZE=$(gawk '$1=="BlockSize"{ print substr($3, 0, length($3)-1)}' $GB_GEMARDIR\gemar.par)
  83. GB_RESULT=$(gawk '    {GB_FILES=$5}
  84.                       {GB_SIZE=$6*'${GB_BLKSIZE}'/1024/1024}
  85.                   END {print GB_SIZE " MB in " GB_FILES " Files"}' $GB_GEMARDIR\gemar.log)
  86.  
  87. if [ $GB_TAPELOGS = 'TRUE' ]
  88. then
  89.   printf "  %s %s   %2s   %s\n" $(date) "$GB_SEQUENZ" "$GB_RESULT"        >> "$GB_LOGFILE"
  90. fi
  91. printf "  %s %s   %-14s (Set %2s)   %s\n" $(date) "$GB_NAME" "$GB_SEQUENZ" "$GB_RESULT"        >> "$GB_LOG"
  92.  
  93.  
  94. _WriteParameterFile
  95.  
  96.