Home | History | Annotate | Line # | Download | only in etc
weekly revision 1.18
      1   1.1      cgd #!/bin/sh -
      2   1.1      cgd #
      3  1.18     jmmv #	$NetBSD: weekly,v 1.18 2004/04/02 13:13:47 jmmv Exp $
      4   1.7    mikel #	from: @(#)weekly	8.2 (Berkeley) 1/2/94
      5   1.1      cgd #
      6   1.1      cgd 
      7  1.11  mycroft export PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/libexec
      8  1.12    lukem umask 077
      9  1.12    lukem 
     10  1.12    lukem if [ -s /etc/weekly.conf ]; then
     11  1.12    lukem 	. /etc/weekly.conf
     12  1.12    lukem fi
     13  1.12    lukem 
     14  1.10    lukem host=`hostname`
     15  1.12    lukem date=`date`
     16  1.18     jmmv rcvar_manpage='weekly.conf(5)'
     17   1.1      cgd 
     18  1.12    lukem echo "To: ${MAILTO:-root}"
     19  1.12    lukem echo "Subject: $host weekly output for $date"
     20  1.12    lukem echo ""
     21   1.6      mrg 
     22  1.10    lukem if [ -f /etc/rc.subr ]; then
     23  1.10    lukem 	. /etc/rc.subr
     24  1.10    lukem else
     25  1.10    lukem 	echo "Can't read /etc/rc.subr; aborting."
     26  1.10    lukem 	exit 1;
     27   1.6      mrg fi
     28   1.6      mrg 
     29   1.1      cgd #echo ""
     30   1.1      cgd #echo "Removing old .o files:"
     31   1.1      cgd #find /usr/src -name '*.o' -atime +21 -print -a -exec rm -f {} \;
     32   1.1      cgd 
     33   1.1      cgd # see if /usr/src exists and is local
     34   1.1      cgd # before looking there for checked-out files
     35   1.1      cgd 
     36   1.2      cgd #if [ -d /usr/src -a \
     37   1.8  mycroft #  -n "`find -f /usr/src ! -fstype local -prune -or -type d -print -prune`" ];
     38   1.2      cgd #then
     39  1.16      kim #	echo ""
     40  1.16      kim #	echo "Looking for checked out files:"
     41   1.2      cgd #
     42  1.17    lukem #	TDIR=`mktemp -d /tmp/_checkout.XXXXXX` || exit 1
     43  1.17    lukem #	trap "/bin/rm -rf $TDIR ; exit 0" EXIT INT QUIT
     44   1.2      cgd #	for file in `find -f /usr/src ! -fstype local -prune -or \
     45   1.2      cgd #	    -name 'p.*' -print | egrep 'SCCS/p\.'`; do
     46   1.2      cgd #		owner=`awk '{ print $3 }' $file`
     47   1.2      cgd #		echo "$owner	$file"
     48  1.17    lukem #		echo $file >> "$TDIR/$owner"
     49   1.2      cgd #	done | sed -e 's,SCCS/p.,,'
     50   1.7    mikel #	if test -n "`ls $TDIR`"; then
     51   1.7    mikel #		for file in $TDIR/*; do
     52   1.7    mikel #			sed -e 's,SCCS/p.,,' $file | \
     53  1.15    lukem #			    Mail -s 'checked out files' ${file##*/}
     54   1.7    mikel #		done
     55   1.7    mikel #	fi
     56   1.2      cgd #fi
     57   1.1      cgd 
     58  1.10    lukem if checkyesno clean_uucp && [ -f /usr/libexec/uucp/clean.weekly ]; then
     59   1.1      cgd 	echo ""
     60   1.1      cgd 	echo "Cleaning up UUCP:"
     61   1.9    lukem 	su daemon -c /usr/libexec/uucp/clean.weekly
     62   1.1      cgd fi
     63   1.1      cgd 
     64  1.16      kim if checkyesno rebuild_locatedb; then
     65  1.16      kim 	echo ""
     66  1.16      kim 	if [ -f /var/db/locate.database ]; then
     67  1.16      kim 		echo "Rebuilding locate database:"
     68  1.16      kim 		chmod 644 /var/db/locate.database
     69  1.16      kim 		chown nobody:nobody /var/db/locate.database
     70  1.16      kim 		nice -5 su -m nobody -c /usr/libexec/locate.updatedb 2>/dev/null
     71  1.16      kim 		chown root:wheel /var/db/locate.database
     72  1.16      kim 	else
     73  1.16      kim 		echo "Not rebuilding locate database; no /var/db/locate.database"
     74  1.16      kim 	fi
     75  1.14       ad fi
     76  1.14       ad 
     77  1.14       ad if [ -f /etc/weekly.local ]; then
     78  1.14       ad 	echo ""
     79  1.14       ad 	echo "Running /etc/weekly.local:"
     80  1.14       ad 	. /etc/weekly.local
     81   1.4      cgd fi
     82