daily revision 1.10
11.1Scgd#!/bin/sh - 21.1Scgd# 31.1Scgd# @(#)daily 5.12 (Berkeley) 5/24/91 41.1Scgd# 51.1ScgdPATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local 61.1Scgdhost=`hostname -s` 71.1Scgdecho "Subject: $host daily run output" 81.1Scgdbak=/var/backups 91.1Scgd 101.10Scgdecho "" 111.10Scgdecho "Removing scratch and junk files:" 121.10Scgdif [ -d /tmp -a ! -h /tmp ]; then 131.10Scgd cd /tmp && { 141.10Scgd find . -type f -atime +3 -exec rm -f -- {} \; 151.10Scgd find . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \ 161.10Scgd >/dev/null 2>&1; } 171.10Scgdfi 181.1Scgd 191.10Scgdif [ -d /var/tmp -a ! -h /var/tmp ]; then 201.10Scgd cd /var/tmp && { 211.10Scgd find . ! -name . -atime +7 -exec rm -f -- {} \; 221.10Scgd find . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \ 231.10Scgd >/dev/null 2>&1; } 241.10Scgdfi 251.10Scgd 261.10Scgdif [ -d /scratch -a ! -h /scratch ]; then 271.10Scgd cd /scratch && { 281.10Scgd find . ! -name . -atime +1 -exec rm -f -- {} \; 291.10Scgd find . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \ 301.10Scgd >/dev/null 2>&1; } 311.10Scgdfi 321.10Scgd 331.10Scgd# XXX should go away/be replaced by nvi version 341.10Scgdif [ -d /var/preserve -a ! -h /var/preserve ]; then 351.10Scgd cd /var/preserve && { 361.10Scgd find . ! -name . -mtime +7 -exec rm -f -- {} \; ; } 371.10Scgdfi 381.10Scgd 391.10Scgdif [ -d /var/rwho -a ! -h /var/rwho ] ; then 401.10Scgd cd /var/rwho && { 411.10Scgd find . ! -name . -mtime +7 -exec rm -f -- {} \; ; } 421.10Scgdfi 431.10Scgd 441.10Scgdcd /tmp 451.10ScgdTMP=daily.$$ 461.10Scgdfind / \( ! -fstype local -o -fstype rdonly -o -fstype fdesc \ 471.10Scgd -o -fstype kernfs \) -a -prune -o \ 481.10Scgd -name 'lost+found' -a -prune -o \ 491.10Scgd -name '*.core' -a -print -o \ 501.10Scgd \( -name '[#,]*' -o -name '.#*' -o -name a.out \ 511.10Scgd -o -name '*.CKP' -o -name '.emacs_[0-9]*' \) \ 521.10Scgd -a -atime +3 -exec rm -f -- {} \; -a -print > $TMP 531.10Scgd 541.10Scgdecho "" 551.10Scgdecho "Possible core dumps:" 561.10Scgdegrep '\.core' $TMP 571.10Scgd 581.10Scgdecho "" 591.10Scgdecho "Deleted files:" 601.10Scgdegrep -v '\.core' $TMP 611.10Scgd 621.10Scgdmsgs -c 631.1Scgd 641.1Scgdif [ -f /etc/news.expire ]; then 651.1Scgd /etc/news.expire 661.1Scgdfi 671.1Scgd 681.6Scgd#if [ -f /var/account ]; then 691.6Scgd# echo "" ; 701.6Scgd# echo "Purging accounting records:" ; 711.6Scgd# mv /var/account/acct.2 /var/account/acct.3 ; 721.6Scgd# mv /var/account/acct.1 /var/account/acct.2 ; 731.6Scgd# mv /var/account/acct.0 /var/account/acct.1 ; 741.6Scgd# cp /var/account/acct /var/account/acct.0 ; 751.6Scgd# sa -s > /dev/null ; 761.6Scgd#fi 771.1Scgd 781.1Scgdecho "" 791.1Scgdecho "Backup passwd and group files:" 801.1Scgdif cmp -s $bak/master.passwd.bak /etc/master.passwd; then :; else 811.1Scgd echo "$host passwd diffs:" 821.1Scgd diff $bak/master.passwd.bak /etc/master.passwd 831.1Scgd mv $bak/master.passwd.bak $bak/master.passwd.bak2 841.1Scgd cp -p /etc/master.passwd $bak/master.passwd.bak 851.1Scgdfi 861.1Scgdif cmp -s $bak/group.bak /etc/group; then :; else 871.1Scgd mv $bak/group.bak $bak/group.bak2 881.1Scgd cp -p /etc/group $bak/group.bak 891.1Scgdfi 901.1Scgdif cmp -s $bak/aliases.bak /etc/aliases; then :; else 911.1Scgd mv $bak/aliases.bak $bak/aliases.bak2 921.1Scgd cp -p /etc/aliases $bak/aliases.bak 931.1Scgdfi 941.1Scgdif [ -f /etc/Distfile ]; then 951.1Scgd if cmp -s $bak/Distfile.bak /etc/Distfile; then :; else 961.1Scgd mv $bak/Distfile.bak $bak/Distfile.bak2 971.1Scgd cp /etc/Distfile $bak/Distfile.bak 981.1Scgd fi 991.1Scgdfi 1001.1Scgd 1011.1Scgdecho "" 1021.1Scgdecho "Running calendar:" 1031.1Scgdcalendar -a 1041.1Scgd 1051.6Scgd# Rotation of mail log now handled automatically by cron and 'newsyslog' 1061.1Scgd 1071.1Scgdif [ -d /var/spool/uucp -a -f /etc/uuclean.daily ]; then 1081.1Scgd echo "" 1091.1Scgd echo "Cleaning up UUCP:" 1101.1Scgd echo /etc/uuclean.daily | su daemon 1111.1Scgdfi 1121.1Scgd 1131.1Scgdecho "" 1141.1Scgdecho "" 1151.1Scgdecho "Checking subsystem status:" 1161.1Scgdecho "" 1171.1Scgdecho "disks:" 1181.1Scgddf -k 1191.1Scgdecho "" 1201.1Scgddump W 1211.1Scgdecho "" 1221.1Scgd 1231.1Scgd 1241.1Scgdecho "" 1251.1Scgdecho "mail:" 1261.1Scgdmailq 1271.1Scgd 1281.1Scgdif [ -d /var/spool/uucp ]; then 1291.1Scgd echo "" 1301.1Scgd echo "uucp:" 1311.2Scgd uustat -a 1321.1Scgdfi 1331.1Scgd 1341.1Scgdecho "" 1351.1Scgdecho "network:" 1361.1Scgdnetstat -i 1371.1Scgdecho "" 1381.1Scgdruptime 1391.1Scgd 1401.1Scgdecho "" 1411.1Scgdecho "Checking filesystems:" 1421.1Scgdfsck -n | grep -v '^\*\* Phase' 1431.1Scgd 1441.1Scgdecho "" 1451.1Scgdif [ -f /etc/Distfile ]; then 1461.1Scgd echo "Running rdist:" 1471.1Scgd rdist -f /etc/Distfile 1481.1Scgdfi 1491.1Scgd 1501.7Scgdsh /etc/security 2>&1 | mail -s "daily insecurity output" root 151