]> Dogcows Code - chaz/tar/commitdiff
Initial revision
authorPaul Eggert <eggert@cs.ucla.edu>
Wed, 24 Nov 1993 09:48:25 +0000 (09:48 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Wed, 24 Nov 1993 09:48:25 +0000 (09:48 +0000)
scripts/dump-remind [new file with mode: 0755]

diff --git a/scripts/dump-remind b/scripts/dump-remind
new file mode 100755 (executable)
index 0000000..d5921d1
--- /dev/null
@@ -0,0 +1,107 @@
+#!/bin/sh
+# This file is included in the GNU tar distribution as an example.  It is
+# not used by default unless the proper line is uncommented in backup-specs.
+# System administrators will probably want to customize this and
+# backup-specs for their site. 
+#
+# This script should be run by tar with --info-script (-F) to inform
+# interested parties that a tape for the next volume of the backup needs to
+# be put in the tape drive. 
+#
+
+# Include location of `sendmail' and GNU finger. 
+PATH="/usr/lib:/usr/local/gnubin:${PATH}"
+export PATH
+
+# Get definition of TAPE_FILE, VOLNO_FILE, and so on. 
+. /home/gd2/dump/backup-specs
+
+mt -f "${TAPE_FILE}" rewind
+mt -f "${TAPE_FILE}" offl
+
+volno="`cat \"${VOLNO_FILE}\" 2> /dev/null`"
+if [ $? -ne 0 ]; then
+   volno=0
+fi
+
+# Get a list of people to whom to mail a request for changing the tape.
+# This egregious nightmare parses the output from GNU finger which shows
+# which users are logged into consoles (and thus in the office and capable
+# of changing tapes).
+#
+# Certain users (like `root') aren't real users, and shouldn't be notified.
+# Neither should `zippy', `elvis', etc. (on the GNU machines) since they're
+# just test accounts. 
+recipients="`
+    finger .clients 2> /dev/null \
+     | sed -ne '
+          1{
+            /clientstatus: file has not changed in/{
+               n;n;n;n;d
+            }
+            n;n;d
+           }
+          s/^..................................................//
+          $!{/^$/d
+             /^root?*$/d
+             /^zippy$/d
+             /^fnord$/d
+             /^elvis$/d
+             /^snurd$/d
+             H
+            }
+          ${g
+            : 1
+            s/\(\n\)\([A-Za-z0-9_][A-Za-z0-9_]*\)\(\n.*\)\2\(.*\)/\1\2\3\4/g
+            s/\n$//g
+            t 1
+            s/^\n//
+            s/\n$//g
+            s/\n/, /g
+            : 2
+            s/, ,/,/g
+            t 2
+            p
+           }'`"
+
+# Customized behavior for FSF machines, to bring attention to the fact that
+# the tape needs to be changed (who looks at the terminal?)
+sendmail -oi -t << __EOF__
+From: `basename $0` (backup tape-changing reminder)
+To: ${recipients}
+Cc: ${ADMINISTRATOR}
+Subject: Backup needs new tape for volume ${volno}
+Reply-To: ${ADMINISTRATOR}
+
+This is an automated report from the backup script running on 
+`hostname`. 
+
+Volume ${volno} of the backup needs to be put in the tape drive.  Usually
+whoever prepared the backup leaves labeled tapes on top of the drive
+itself.  If there aren't any more, information about where to find tapes
+and how to label them are posted on the wall by apple-gunkies (unhelpfully
+obscured by a bookshelf).  An online copy (which is probably more
+up-to-date) can also be found in ~friedman/etc/fsf/backup.how.
+__EOF__
+
+
+echo "\aPlease put volume ${volno} in tape drive and press RETURN"
+read input
+echo "Writing volume ${volno}..."
+
+sendmail -oi -t << __EOF__
+From: `basename $0` (backup tape-changing reminder)
+To: ${recipients}
+Cc: ${ADMINISTRATOR}
+Subject: Volume ${volno} for backup has been added
+Reply-To: ${ADMINISTRATOR}
+
+This is an automated report from the backup script running on 
+`hostname`. 
+
+The backup has been continued, so for now no further attention is required.
+__EOF__
+
+exit 0
+
+# eof
This page took 0.028012 seconds and 4 git commands to generate.