weekly revision 1.22
1#!/bin/sh - 2# 3# $NetBSD: weekly,v 1.22 2007/02/15 23:04:10 reed Exp $ 4# from: @(#)weekly 8.2 (Berkeley) 1/2/94 5# 6 7export PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/libexec 8umask 077 9 10if [ -s /etc/weekly.conf ]; then 11 . /etc/weekly.conf 12fi 13 14host=`hostname` 15date=`date` 16rcvar_manpage='weekly.conf(5)' 17 18echo "To: ${MAILTO:-root}" 19echo "Subject: $host weekly output for $date" 20echo "" 21 22if [ -f /etc/rc.subr ]; then 23 . /etc/rc.subr 24else 25 echo "Can't read /etc/rc.subr; aborting." 26 exit 1; 27fi 28 29WEEKLYDIR=`mktemp -d /tmp/_weekly.XXXXXX` || exit 1 30 31trap "/bin/rm -rf $WEEKLYDIR ; exit 0" EXIT INT QUIT PIPE 32 33if ! cd "$WEEKLYDIR"; then 34 echo "Can not cd to $WEEKLYDIR". 35 exit 1 36fi 37 38TMP=weekly.$$ 39 40#echo "" 41#echo "Removing old .o files:" 42#find /usr/src -name '*.o' -atime +21 -print -a -exec rm -f {} \; 43 44# see if /usr/src exists and is local 45# before looking there for checked-out files 46 47#if [ -d /usr/src -a \ 48# -n "`find -f /usr/src ! -fstype local -prune -or -type d -print -prune`" ]; 49#then 50# echo "" 51# echo "Looking for checked out files:" 52# 53# TDIR=`mktemp -d /tmp/_checkout.XXXXXX` || exit 1 54# trap "/bin/rm -rf $TDIR ; exit 0" EXIT INT QUIT 55# for file in `find -f /usr/src ! -fstype local -prune -or \ 56# -name 'p.*' -print | egrep 'SCCS/p\.'`; do 57# owner=`awk '{ print $3 }' $file` 58# echo "$owner $file" 59# echo $file >> "$TDIR/$owner" 60# done | sed -e 's,SCCS/p.,,' 61# if test -n "`ls $TDIR`"; then 62# for file in $TDIR/*; do 63# sed -e 's,SCCS/p.,,' $file | \ 64# Mail -s 'checked out files' ${file##*/} 65# done 66# fi 67#fi 68 69if checkyesno rebuild_locatedb; then 70 echo "" 71 if [ -f /var/db/locate.database ]; then 72 echo "Rebuilding locate database:" 73 chmod 644 /var/db/locate.database 74 chown nobody:nobody /var/db/locate.database 75 (cd / && nice -5 su -m nobody -c /usr/libexec/locate.updatedb 2>/dev/null) 76 chown root:wheel /var/db/locate.database 77 else 78 echo "Not rebuilding locate database; no /var/db/locate.database" 79 fi 80fi 81 82if checkyesno rebuild_whatisdb; then 83 echo "" 84 if [ -f /etc/man.conf -o -d /usr/share/man ]; then 85 echo "Rebuilding whatis databases:" 86 nice -n 5 /usr/libexec/makewhatis -f 87 else 88 echo "Not rebuilding whatis databases" 89 fi 90fi 91 92if [ -f /etc/weekly.local ]; then 93 . /etc/weekly.local > $TMP 2>&1 94 if [ -s $TMP ] ; then 95 printf "\nRunning /etc/weekly.local:\n" 96 cat $TMP 97 fi 98 rm -f $TMP 99fi 100