NetBSD/etc/daily
mrg 016b324a94 add configuration file for daily, weekly, montly, as
daily.conf, weekly.conf and montly.conf.  the file
allows each action taken by all scripts to be turned
on or off.
1997-01-05 11:21:09 +00:00

195 lines
3.7 KiB
Bash

#!/bin/sh -
#
# $NetBSD: daily,v 1.18 1997/01/05 11:21:09 mrg Exp $
#
# form: @(#)daily 5.12 (Berkeley) 5/24/91
#
PATH=/bin:/usr/bin:/sbin:/usr/sbin
host=`hostname -s`
echo "Subject: $host daily run output"
umask 077
if [ -s /etc/daily.conf ]; then
. /etc/daily.conf
fi
#echo ""
#echo "Removing scratch and junk files:"
#if [ -d /tmp -a ! -h /tmp ]; then
# cd /tmp && {
# find . -type f -atime +3 -exec rm -f -- {} \;
# find . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \
# >/dev/null 2>&1; }
#fi
#if [ -d /var/tmp -a ! -h /var/tmp ]; then
# cd /var/tmp && {
# find . ! -name . -atime +7 -exec rm -f -- {} \;
# find . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \
# >/dev/null 2>&1; }
#fi
# Additional junk directory cleanup would go like this:
#if [ -d /scratch -a ! -h /scratch ]; then
# cd /scratch && {
# find . ! -name . -atime +1 -exec rm -f -- {} \;
# find . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \
# >/dev/null 2>&1; }
#fi
#if [ -d /var/rwho -a ! -h /var/rwho ] ; then
# cd /var/rwho && {
# find . ! -name . -mtime +7 -exec rm -f -- {} \; ; }
#fi
TMPDIR=/tmp/_daily.$$
if ! mkdir $TMPDIR; then
echo can not create $TMPDIR.
exit 1
fi
if ! cd $TMPDIR; then
echo can not cd to $TMPDIR.
exit 1
fi
TMP=daily.$$
TMP2=daily2.$$
if [ x"$find_core" != xNO ] ; then
find / \( ! -fstype local -o -fstype rdonly -o -fstype fdesc \
-o -fstype kernfs -o -fstype procfs \) -a -prune -o \
-name 'lost+found' -a -prune -o \
-name '*.core' -a -print > $TMP
# \( -name '[#,]*' -o -name '.#*' -o -name a.out \
# -o -name '*.CKP' -o -name '.emacs_[0-9]*' \) \
# -a -atime +3 -exec rm -f -- {} \; -a -print > $TMP
egrep '\.core' $TMP > $TMP2
if [ -s $TMP2 ]; then
echo ""
echo "Possible core dumps:"
cat $TMP2
fi
# egrep -v '\.core' $TMP > $TMP2
# if [ -s $TMP2 ]; then
# echo ""
# echo "Deleted files:"
# cat $TMP2
# fi
rm -f $TMP $TMP2
fi
if [ x"$run_msgs" != xNO ]; then
msgs -c
fi
if [ x"$expire_news" != xNO -a -f /etc/news.expire ]; then
/etc/news.expire
fi
if [ x"$purge_accounting" != xNO -a -f /var/account/acct ]; then
echo "" ;
echo "Purging accounting records:" ;
mv /var/account/acct.2 /var/account/acct.3 ;
mv /var/account/acct.1 /var/account/acct.2 ;
mv /var/account/acct.0 /var/account/acct.1 ;
cp /var/account/acct /var/account/acct.0 ;
sa -sq ;
fi
if [ x"$run_calendar" != xNO ]; then
calendar -a > $TMP
if [ -s $TMP ]; then
echo ""
echo "Running calendar:"
cat $TMP
fi
rm -f $TMP
fi
if [ x"$check_uucp" != xNO -a -d /var/spool/uucp -a -f /etc/uuclean.daily ]; then
echo ""
echo "Cleaning up UUCP:"
echo /etc/uuclean.daily | su daemon
fi
if [ x"$check_disks" != xNO ]; then
df -k > $TMP
dump W > $TMP2
if [ -s $TMP -o -s $TMP2 ]; then
echo ""
echo "Checking subsystem status:"
echo ""
echo "disks:"
if [ -s $TMP ]; then
cat $TMP
echo ""
fi
if [ -s $TMP2 ]; then
cat $TMP2
echo ""
fi
echo ""
fi
fi
rm -f $TMP $TMP2
if [ x"$check_mailq" != xNO ]; then
mailq > $TMP
if ! grep -q "^Mail queue is empty$" $TMP; then
echo ""
echo "mail:"
cat $TMP
fi
fi
rm -f $TMP
if [ x"$check_uucp" != xNO -a -d /var/spool/uucp ]; then
uustat -a > $TMP
if [ -s $TMP ]; then
echo ""
echo "uucp:"
fi
fi
rm -f $TMP
if [ x"$check_network" != xNO ]; then
echo ""
echo "network:"
netstat -i
echo ""
t=/var/rwho/*
if [ "$t" != '/var/rwho/*' ]; then
ruptime
fi
fi
if [ x"$run_fsck" != xNO ]; then
echo ""
echo "Checking filesystems:"
fsck -n | grep -v '^\*\* Phase'
fi
echo ""
if [ x"$run_rdist" != xNO -a -f /etc/Distfile ]; then
echo "Running rdist:"
rdist -f /etc/Distfile
fi
if [ x"$run_security" != xNO ]; then
sh /etc/security 2>&1 | mail -s "daily insecurity output" root
fi
rm -rf $TMPDIR
exit