X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=scripts%2Flevel-0;h=734d9e4c9011bf348b63cd61cc633e034fac825a;hb=640effdebd564a59ba31772316e5d9b9329491f3;hp=15f9e64710c7b4007be6bd829ebedbd2dc574660;hpb=2317912ab9ac0b500b781f46946d41e6994021ea;p=chaz%2Ftar diff --git a/scripts/level-0 b/scripts/level-0 index 15f9e64..734d9e4 100644 --- a/scripts/level-0 +++ b/scripts/level-0 @@ -10,10 +10,10 @@ # You must edit the file `backup-specs' to set the parameters for your site. # Useful for backup-specs, in case things have to be done slightly -# differently for different dump levels. +# differently for different dump levels. DUMP_LEVEL=0 -# Insure `mail' is in PATH. +# Insure `mail' is in PATH. PATH="/usr/ucb:${PATH}" export PATH @@ -47,7 +47,7 @@ if [ "${1}" != "now" ]; then if((hr + 0) < (spec + 0)) print 3600 * (spec - hr) - 60 * mn; else - print 3600 * (spec + (24 - hr)) - 60 * mn; + print 3600 * (spec + (24 - hr)) - 60 * mn; }' spec=\"${spec}\"`" clear @@ -60,30 +60,34 @@ fi # Put startdate in the subject line of mailed report, since if it happens # to run longer than 24 hours (as may be the case if someone forgets to put # in the next volume of the tape in adequate time), the backup date won't -# appear too misleading. +# appear too misleading. startdate="`date`" here="`pwd`" # Logfile name should be in the form ``log-1993-03-18-level-0'' +# They go in the subdirectory `log' of the current directory. # i.e. year-month-date. This format is useful for sorting by name, since # logfiles are intentionally kept online for future reference. -LOGFILE=log-`date | awk ' - BEGIN { - d["Jan"] = "01"; d["Feb"] = "02"; d["Mar"] = "03"; - d["Apr"] = "04"; d["May"] = "05"; d["Jun"] = "06"; - d["Jul"] = "07"; d["Aug"] = "08"; d["Sep"] = "09"; - d["Oct"] = "10"; d["Nov"] = "11"; d["Dec"] = "12"; - } - { - if ($3 < 10) - $3 = "0" $3; - print $6 "-" d[$2] "-" $3; - }'`-level-${DUMP_LEVEL} +LOGFILE="log/log-`date | sed -ne ' + s/[^ ]* *\([^ ]*\) *\([^ ]*\).* \([^ ]*\)$/\3-\1-\2/ + /-[0-9]$/s/\([0-9]\)$/0\1/ + /Jan/{s/Jan/01/p;q;} + /Feb/{s/Feb/02/p;q;} + /Mar/{s/Mar/03/p;q;} + /Apr/{s/Apr/04/p;q;} + /May/{s/May/05/p;q;} + /Jun/{s/Jun/06/p;q;} + /Jul/{s/Jul/07/p;q;} + /Aug/{s/Aug/08/p;q;} + /Sep/{s/Sep/09/p;q;} + /Oct/{s/Oct/10/p;q;} + /Nov/{s/Nov/11/p;q;} + /Dec/{s/Dec/12/p;q;}'`-level-${DUMP_LEVEL}" localhost="`hostname | sed -e 's/\..*//'`" -TAR_PART1="/usr/local/bin/tar -c --multi-volume --one-file-system --block=${BLOCKING} --sparse --volno-file=${VOLNO_FILE}" +TAR_PART1="${TAR} -c --multi-volume --one-file-system --blocking=${BLOCKING} --sparse --volno-file=${VOLNO_FILE}" # Only use --info-script if DUMP_REMIND_SCRIPT was defined in backup-specs if [ "x${DUMP_REMIND_SCRIPT}" != "x" ]; then @@ -102,9 +106,9 @@ fi # Most everything below here is run in a subshell for which all output is # piped through `tee' to the logfile. Doing this, instead of having # multiple pipelines all over the place, is cleaner and allows access to -# the exit value from various commands more easily. +# the exit value from various commands more easily. ( - # Caveat: Some version of `mt' require `-t', not `-f'. + # Caveat: Some version of `mt' require `-t', not `-f'. mt -f "${TAPE_FILE}" rewind rm -f "${VOLNO_FILE}" @@ -136,7 +140,7 @@ fi fi # `rsh' doesn't exit with the exit status of the remote command. What - # stupid lossage. TODO: think of a reliable workaround. + # stupid lossage. TODO: think of a reliable workaround. if [ $? -ne 0 ] ; then echo "Backup of ${1} failed." 1>&2 # I'm assuming that the tar will have written an empty @@ -171,7 +175,7 @@ fi sh -c "exec ${TAR_PART1} -f \"${TAPE_FILE}\" ${TAR_PART2} ${TAR_PART3} ${BACKUP_FILES}" # `rsh' doesn't exit with the exit status of the remote command. What - # lossage. TODO: think of a reliable workaround. + # lossage. TODO: think of a reliable workaround. if [ $? -ne 0 ] ; then echo "Backup of miscellaneous files failed." # I'm assuming that the tar will have written an empty