daily revision 1.4
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.1Scgdecho "" 111.1Scgdecho "Removing scratch and junk files:" 121.1Scgdif [ -d /tmp ]; then 131.1Scgd cd /tmp && { 141.1Scgd find . -type f -atime +3 -exec rm -f -- {} \; 151.1Scgd find . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \ 161.1Scgd >/dev/null 2>&1; } 171.1Scgdfi 181.1Scgd 191.1Scgdif [ -d /var/tmp ]; then 201.1Scgd cd /var/tmp && { 211.1Scgd find . ! -name . -atime +7 -exec rm -f -- {} \; 221.1Scgd find . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \ 231.1Scgd >/dev/null 2>&1; } 241.1Scgdfi 251.1Scgd 261.1Scgdif [ -d /scratch ]; then 271.1Scgd cd /scratch && { 281.1Scgd find . ! -name . -atime +1 -exec rm -f -- {} \; 291.1Scgd find . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \ 301.1Scgd >/dev/null 2>&1; } 311.1Scgdfi 321.1Scgd 331.1Scgdif [ -d /var/preserve ]; then 341.1Scgd cd /var/preserve && { 351.1Scgd find . ! -name . -mtime +7 -exec rm -f -- {} \; ; } 361.1Scgdfi 371.1Scgd 381.1Scgdif [ -d /var/rwho ] ; then 391.1Scgd cd /var/rwho && { 401.1Scgd find . ! -name . -mtime +7 -exec rm -f -- {} \; ; } 411.1Scgdfi 421.1Scgd 431.1Scgdcd /tmp 441.1Scgdfind / ! -fstype local -a -prune -o \ 451.1Scgd \( -name '[#,]*' -o -name '.#*' -o -name a.out -o -name core \ 461.1Scgd -o -name '*.CKP' -o -name '.emacs_[0-9]*' \) \ 471.1Scgd -a -atime +3 -exec rm -f -- {} \; 481.2Scgd#msgs -c 491.1Scgdif [ -f /etc/news.expire ]; then 501.1Scgd /etc/news.expire 511.1Scgdfi 521.1Scgd 531.2Scgdif [ -f /var/account ]; then 541.2Scgd echo "" ; 551.2Scgd echo "Purging accounting records:" ; 561.2Scgd mv /var/account/acct.2 /var/account/acct.3 ; 571.2Scgd mv /var/account/acct.1 /var/account/acct.2 ; 581.2Scgd mv /var/account/acct.0 /var/account/acct.1 ; 591.2Scgd cp /var/account/acct /var/account/acct.0 ; 601.2Scgd sa -s > /dev/null ; 611.2Scgdfi 621.1Scgd 631.1Scgdecho "" 641.1Scgdecho "Backup passwd and group files:" 651.1Scgdif cmp -s $bak/master.passwd.bak /etc/master.passwd; then :; else 661.1Scgd echo "$host passwd diffs:" 671.1Scgd diff $bak/master.passwd.bak /etc/master.passwd 681.1Scgd mv $bak/master.passwd.bak $bak/master.passwd.bak2 691.1Scgd cp -p /etc/master.passwd $bak/master.passwd.bak 701.1Scgdfi 711.1Scgdif cmp -s $bak/group.bak /etc/group; then :; else 721.1Scgd mv $bak/group.bak $bak/group.bak2 731.1Scgd cp -p /etc/group $bak/group.bak 741.1Scgdfi 751.1Scgdif cmp -s $bak/aliases.bak /etc/aliases; then :; else 761.1Scgd mv $bak/aliases.bak $bak/aliases.bak2 771.1Scgd cp -p /etc/aliases $bak/aliases.bak 781.1Scgdfi 791.1Scgdif [ -f /etc/Distfile ]; then 801.1Scgd if cmp -s $bak/Distfile.bak /etc/Distfile; then :; else 811.1Scgd mv $bak/Distfile.bak $bak/Distfile.bak2 821.1Scgd cp /etc/Distfile $bak/Distfile.bak 831.1Scgd fi 841.1Scgdfi 851.1Scgd 861.1Scgdecho "" 871.1Scgdecho "Running calendar:" 881.1Scgdcalendar -a 891.1Scgd 901.4Sglassecho "" 911.4Sglassecho "Making 'whatis' database:" 921.3Sglassif [ -d /usr/share/man -a -f /usr/share/man/makewhatis.sed ]; then 931.4Sglass for file in `find /usr/share/man -type f -name '*.0' -print`; do \ 941.4Sglass sed -n -f /usr/share/man/makewhatis.sed $file; \ 951.4Sglass done | sort -u > /tmp/whatis.db.$$ 961.4Sglass cp /tmp/whatis.db.$$ /usr/share/man/whatis.db 971.4Sglass chmod 644 /usr/share/man/whatis.db 981.4Sglass rm -f /tmp/whatis.db.$$ 991.3Sglassfi 1001.3Sglass 1011.3Sglassecho "" 1021.1Scgdecho "Rotating mail log:" 1031.1Scgdcd /var/log 1041.2Scgdrm -f maillog.7.Z 1051.2Scgdif [ -f maillog.6.Z ]; then mv -f maillog.6.Z maillog.7.Z; fi 1061.2Scgdif [ -f maillog.5.Z ]; then mv -f maillog.5.Z maillog.6.Z; fi 1071.2Scgdif [ -f maillog.4.Z ]; then mv -f maillog.4.Z maillog.5.Z; fi 1081.2Scgdif [ -f maillog.3.Z ]; then mv -f maillog.3.Z maillog.4.Z; fi 1091.2Scgdif [ -f maillog.2.Z ]; then mv -f maillog.2.Z maillog.3.Z; fi 1101.2Scgdif [ -f maillog.1.Z ]; then mv -f maillog.1.Z maillog.2.Z; fi 1111.2Scgdif [ -f maillog.0.Z ]; then mv -f maillog.0.Z maillog.1.Z; fi 1121.1Scgdmv -f maillog maillog.0 1131.2Scgdcompress -f maillog.0 1141.1Scgdcp /dev/null maillog 1151.2Scgdchmod 600 maillog 1161.1Scgdkill -1 `cat /var/run/syslog.pid` 1171.2Scgd 1181.2Scgd 1191.1Scgdcd / 1201.1Scgd 1211.1Scgdif [ -d /var/spool/uucp -a -f /etc/uuclean.daily ]; then 1221.1Scgd echo "" 1231.1Scgd echo "Cleaning up UUCP:" 1241.1Scgd echo /etc/uuclean.daily | su daemon 1251.1Scgdfi 1261.1Scgd 1271.1Scgdecho "" 1281.1Scgdecho "" 1291.1Scgdecho "Checking subsystem status:" 1301.1Scgdecho "" 1311.1Scgdecho "disks:" 1321.1Scgddf -k 1331.1Scgdecho "" 1341.1Scgddump W 1351.1Scgdecho "" 1361.1Scgd 1371.1Scgd 1381.1Scgdecho "" 1391.1Scgdecho "mail:" 1401.1Scgdmailq 1411.1Scgd 1421.1Scgdif [ -d /var/spool/uucp ]; then 1431.1Scgd echo "" 1441.1Scgd echo "uucp:" 1451.2Scgd uustat -a 1461.1Scgdfi 1471.1Scgd 1481.1Scgdecho "" 1491.1Scgdecho "network:" 1501.1Scgdnetstat -i 1511.1Scgdecho "" 1521.1Scgdruptime 1531.1Scgd 1541.1Scgdecho "" 1551.1Scgdecho "Checking filesystems:" 1561.1Scgdfsck -n | grep -v '^\*\* Phase' 1571.1Scgd 1581.1Scgdecho "" 1591.1Scgdif [ -f /etc/Distfile ]; then 1601.1Scgd echo "Running rdist:" 1611.1Scgd rdist -f /etc/Distfile 1621.1Scgdfi 1631.1Scgd 1641.1Scgdsh /etc/security | mail -s "daily insecurity output" root 165