[BACK]Return to daily CVS log [TXT][DIR] Up to [local] / src / etc

Annotation of src/etc/daily, Revision 1.22

1.1       deraadt     1: #!/bin/sh -
                      2: #
1.22    ! mickey      3: #      $OpenBSD: daily,v 1.21 1997/09/15 09:58:08 deraadt Exp $
1.17      millert     4: #      From: @(#)daily 8.2 (Berkeley) 1/25/94
1.1       deraadt     5: #
1.17      millert     6: PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin
1.1       deraadt     7: host=`hostname -s`
                      8: echo "Subject: $host daily run output"
1.17      millert     9: bak=/var/backups
1.1       deraadt    10:
1.21      deraadt    11: if [ -f /etc/daily.local ]; then
1.2       david      12:        echo ""
                     13:        echo "Running daily.local:"
                     14:        . /etc/daily.local
                     15: fi
                     16:
1.16      millert    17: TMP=`mktemp /tmp/_daily.XXXXXX` || exit 1
                     18:
1.14      millert    19: trap 'rm -f $TMP' 0 1 15
                     20:
1.1       deraadt    21: echo ""
1.17      millert    22: echo "Removing scratch and junk files:"
                     23: if [ -d /tmp -a ! -h /tmp ]; then
                     24:        cd /tmp && {
                     25:        find . -type f -atime +3 -execdir rm -f -- {} \;
                     26:        find . ! -name . -type d -mtime +1 -execdir rmdir -- {} \; \
                     27:            >/dev/null 2>&1; }
                     28: fi
1.1       deraadt    29:
1.17      millert    30: if [ -d /var/tmp -a ! -h /var/tmp ]; then
                     31:        cd /var/tmp && {
                     32:        find . ! -name . -atime +7 -execdir rm -f -- {} \;
                     33:        find . ! -name . -type d -mtime +1 -execdir rmdir -- {} \; \
                     34:            >/dev/null 2>&1; }
                     35: fi
1.1       deraadt    36:
1.3       deraadt    37: # Additional junk directory cleanup would go like this:
                     38: #if [ -d /scratch -a ! -h /scratch ]; then
                     39: #      cd /scratch && {
1.17      millert    40: #      find . ! -name . -atime +1 -execdir rm -f -- {} \;
                     41: #      find . ! -name . -type d -mtime +1 -execdir rmdir -- {} \; \
1.3       deraadt    42: #          >/dev/null 2>&1; }
                     43: #fi
1.1       deraadt    44:
1.17      millert    45: if [ -d /var/preserve -a ! -h /var/preserve ]; then
                     46:        cd /var/preserve && {
                     47:        find . ! -name . -mtime +7 -execdir rm -f -- {} \; ; }
                     48: fi
                     49:
                     50: if [ -d /var/rwho -a ! -h /var/rwho ] ; then
                     51:        cd /var/rwho && {
                     52:        find . ! -name . -mtime +7 -execdir rm -f -- {} \; ; }
                     53: fi
1.1       deraadt    54:
1.7       deraadt    55: find / \( ! -fstype local -o -fstype rdonly -o -fstype fdesc \
                     56:                -o -fstype kernfs -o -fstype procfs \) -a -prune -o \
                     57:        -name 'lost+found' -a -prune -o \
1.17      millert    58:        -name '*.core' -a -print -o \
                     59:        \( -name '[#,]*' -o -name '.#*' -o -name a.out \
                     60:           -o -name '*.CKP' -o -name '.emacs_[0-9]*' \) \
                     61:                -a -atime +3 -a -execdir rm -f -- {} \; -a -print > $TMP
1.1       deraadt    62:
1.14      millert    63: if egrep -q '\.core$' $TMP; then
1.17      millert    64:        echo ""
                     65:        echo "Possible core dumps:"
                     66:        egrep '\.core$' $TMP
                     67: fi
                     68:
                     69: if egrep -qv '\.core$' $TMP; then
                     70:        echo ""
                     71:        echo "Deleted files:"
                     72:        egrep -v '\.core$' $TMP
1.14      millert    73: fi
1.1       deraadt    74:
                     75: msgs -c
                     76:
1.17      millert    77: if [ -s /etc/news.expire ]; then
1.1       deraadt    78:        /etc/news.expire
                     79: fi
                     80:
                     81: if [ -f /var/account/acct ]; then
1.17      millert    82:        echo ""
                     83:        echo "Purging accounting records:"
                     84:        mv /var/account/acct.2 /var/account/acct.3
                     85:        mv /var/account/acct.1 /var/account/acct.2
                     86:        mv /var/account/acct.0 /var/account/acct.1
                     87:        cp /var/account/acct /var/account/acct.0
                     88:        sa -sq
                     89: fi
                     90:
                     91: # If ROOTBACKUP is set to 1 in the environment, and
                     92: # if filesystem named /altroot is type ffs, on /dev/* and mounted "xx",
                     93: # use it as a backup root filesystem to be updated daily.
                     94: [ "X$ROOTBACKUP" = X1 ] && {
                     95:        rootdev=`awk '$2 == "/" && $1 ~ /^\/dev\// && $3 == "ffs" && \
                     96:            $4 == "rw" \
                     97:                 { print substr($1, 6) }' < /etc/fstab`
                     98:        rootbak=`awk '$2 == "/altroot" && $1 ~ /^\/dev\// && $3 == "ffs" && \
                     99:            $4 == "xx" \
                    100:                { print substr($1, 6) }' < /etc/fstab`
                    101:        [ X$rootdev != X -a X$rootbak != X ] && {
                    102:                sync
                    103:                echo ""
                    104:                echo "Backing up root filesystem:"
                    105:                echo "copying /dev/r$rootdev to /dev/r$rootbak"
                    106:                dd if=/dev/r$rootdev of=/dev/r$rootbak bs=16b seek=1 skip=1 \
1.22    ! mickey    107:                        conv=noerror
1.17      millert   108:                fsck -y /dev/r$rootbak
                    109:        }
                    110: }
1.1       deraadt   111:
                    112: echo ""
1.18      millert   113: if [ -d /var/yp/binding -a ! -d /var/yp/`domainname` -o "X$CALENDAR" = X0 ]
                    114: then
                    115:        if [ "X$CALENDAR" = X0 ]; then
                    116:                echo "Not running calendar, (disabled)."
                    117:        else
                    118:                echo "Not running calendar, (yp client)."
                    119:        fi
1.10      deraadt   120: else
1.20      pierre    121:        echo "Running calendar in the background."
                    122:        calendar -a &
1.10      deraadt   123: fi
1.1       deraadt   124:
                    125: # Rotation of mail log now handled automatically by cron and 'newsyslog'
                    126:
                    127: if [ -d /var/spool/uucp -a -f /etc/uuclean.daily ]; then
                    128:        echo ""
                    129:        echo "Cleaning up UUCP:"
                    130:        echo /etc/uuclean.daily | su daemon
                    131: fi
                    132:
                    133: echo ""
                    134: echo "Checking subsystem status:"
                    135: echo ""
                    136: echo "disks:"
                    137: df -k
                    138: echo ""
                    139: dump W
                    140: echo ""
                    141:
1.15      millert   142: mailq > $TMP
                    143: if ! grep -q "^Mail queue is empty$" $TMP; then
                    144:        echo ""
                    145:        echo "mail:"
                    146:        cat $TMP
                    147: fi
1.1       deraadt   148:
                    149: if [ -d /var/spool/uucp ]; then
1.15      millert   150:        uustat -a > $TMP
                    151:        if [ -s $TMP ]; then
                    152:                echo ""
                    153:                echo "uucp:"
                    154:                cat $TMP
                    155:        fi
1.1       deraadt   156: fi
                    157:
                    158: echo ""
                    159: echo "network:"
                    160: netstat -i
                    161: echo ""
1.14      millert   162:
1.15      millert   163: t=/var/rwho/*
                    164: if [ "$t" != '/var/rwho/*' ]; then
1.17      millert   165:        echo ""
1.14      millert   166:        ruptime
                    167: fi
1.1       deraadt   168:
1.17      millert   169: # If CHECKFILESYSTEMS is set to 1 in the environment, run fsck
                    170: # with the no-write flag.
                    171: [ "X$CHECKFILESYSTEMS" = X1 ] && {
                    172:        echo ""
                    173:        echo "Checking filesystems:"
                    174:        fsck -n | grep -v '^\*\* Phase'
                    175: }
1.1       deraadt   176:
                    177: if [ -f /etc/Distfile ]; then
1.17      millert   178:        echo ""
1.1       deraadt   179:        echo "Running rdist:"
1.17      millert   180:        if [ -d /var/log/rdist ]; then
1.19      deraadt   181:                logf=`date +%Y.%b.%e`
1.17      millert   182:                rdist -f /etc/Distfile 2>&1 | tee /var/log/rdist/$logf
                    183:        else
                    184:                rdist -f /etc/Distfile
                    185:        fi
1.1       deraadt   186: fi
                    187:
1.12      deraadt   188: sh /etc/security 2>&1 | mail -s "$host daily insecurity output" root