diff options
Diffstat (limited to 'etc/weekly')
-rw-r--r-- | etc/weekly | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/etc/weekly b/etc/weekly new file mode 100644 index 0000000..79b46ff --- /dev/null +++ b/etc/weekly @@ -0,0 +1,59 @@ +#!/bin/sh - +# +# @(#)weekly 5.14 (Berkeley) 6/23/91 +# + +PATH=/bin:/sbin:/usr/sbin:/usr/bin:/usr/libexec +export PATH + +host=`hostname -s` +echo "Subject: $host weekly run output" + +#echo "" +#echo "Removing old .o files:" +#find /usr/src -name '*.o' -atime +21 -print -a -exec rm -f {} \; + +# see if /usr/src exists and is local +# before looking there for checked-out files + +if [ -d /usr/src -a \ + X"`find -f /usr/src ! -fstype local -prune -or -type d -print -prune`" != X ]; +then + echo "looking for checked out files:" + TDIR=/tmp/_checkout$$ + + mkdir $TDIR + for file in `find -f /usr/src ! -fstype local -prune -or \ + -name 'p.*' -print | egrep 'SCCS/p\.'`; do + owner=`awk '{ print $3 }' $file` + echo "$owner $file" + echo $file >> $TDIR/$owner + done | sed -e 's,SCCS/p.,,' + for file in $TDIR/*; do + sed -e 's,SCCS/p.,,' $file | \ + Mail -s 'checked out files' `basename $file` + done + rm -rf $TDIR +fi + +if [ -f /usr/lib/uucp/clean.weekly ]; then + echo "" + echo "Cleaning up UUCP:" + echo /usr/lib/uucp/clean.weekly | su daemon +fi +echo "" + +echo "Rotating messages:" +cd /var/log +if [ -f messages.2 ]; then mv -f messages.2 messages.3; fi +if [ -f messages.1 ]; then mv -f messages.1 messages.2; fi +if [ -f messages.0 ]; then mv -f messages.0 messages.1; fi +mv -f messages messages.0 +cp /dev/null messages +chmod 644 messages +kill -1 `cat /var/run/syslog.pid` +cd / + +echo "" +echo "Rebuilding locate database:" +echo /usr/libexec/locate.updatedb | nice -5 su -m nobody 2>/dev/null |