home *** CD-ROM | disk | FTP | other *** search
/ H4CK3R 4 / hacker04 / 04_HACK04.ISO / darwin / darwinx86.iso / private / etc / daily < prev    next >
Encoding:
Text File  |  2001-09-17  |  3.6 KB  |  132 lines

  1. #!/bin/sh -
  2. #
  3. #    @(#)daily    8.2 (Berkeley) 1/25/94
  4. #
  5. PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin
  6. host=`hostname`
  7. echo "Subject: $host daily run output"
  8. bak=/var/backups
  9.  
  10. echo ""
  11. echo "Removing scratch and junk files:"
  12.  
  13. if [ -d /var/rwho ] ; then
  14.     cd /var/rwho && {
  15.     find . ! -name . -mtime +7 -exec rm -f -- {} \; ; }
  16. fi
  17.  
  18. # Clean up junk files.
  19. #find / \( ! -fstype local -o -fstype rdonly \) -a -prune -o \
  20. #       \( -name '[#,]*' -o -name '.#*' -o -name a.out -o -name '*.core' \
  21. #      -o -name '*.CKP' -o -name '.emacs_[0-9]*' \) \
  22. #           -a -atime +3 -exec rm -f -- {} \;
  23.  
  24. # Clean up NFS turds.  May be useful on NFS servers.
  25. #if [ "${host}" != "localhost" ]; then
  26. #    find / -name .nfs\* -mtime +7 -exec rm -f -- {} \; -o -fstype nfs -prune
  27. #fi
  28.  
  29. if [ -d /tmp ]; then
  30.     cd /tmp && {
  31.     find . -fstype local -type f -atime +3 -ctime +3 -exec rm -f -- {} \;
  32.     find -fstype local -d . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \
  33.     >/dev/null 2>&1; }
  34. fi
  35.  
  36. if [ -d /var/tmp ]; then
  37.     cd /var/tmp && {
  38.     find . -fstype local ! -name . -atime +7 -ctime +3 -exec rm -f -- {} \;
  39.     find -fstype local -d . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \
  40.     >/dev/null 2>&1; }
  41. fi
  42.  
  43. # remove system messages older than 21 days
  44. msgs -c
  45.  
  46. if [ -f /var/account/acct ] ; then
  47.     if [ -x /usr/bin/gzip ]; then gzext=".gz"; else gzext=""; fi
  48.     echo ""
  49.     echo "Gathering accounting statistics:"
  50.     cd /var/account
  51.     if [ -f "acct.2${gzext}" ] ; then mv -f "acct.2${gzext}" "acct.3${gzext}" ; fi
  52.     if [ -f "acct.1${gzext}" ] ; then mv -f "acct.1${gzext}" "acct.2${gzext}" ; fi
  53.     if [ -f "acct.0${gzext}" ] ; then mv -f "acct.0${gzext}" "acct.1${gzext}" ; fi
  54.     cp -pf acct acct.0
  55.     if [ -x /usr/bin/gzip ]; then gzip -9 acct.0; fi
  56.     sa -s > /dev/null
  57. fi
  58.  
  59. if [ -d /var/db/netinfo ]; then
  60.     echo ""
  61.     echo "Backing up NetInfo data"
  62.     cd /var/db/netinfo
  63.     for domain in *.nidb; do
  64.     domain=$(basename $domain .nidb)
  65.     nidump -r / -t localhost/$domain > $bak/$domain.nidump;
  66.     done
  67. fi
  68.  
  69. echo ""
  70. echo "Checking subsystem status:"
  71.  
  72. echo ""
  73. echo "disks:"
  74. df -k -l
  75. echo ""
  76. dump W
  77.  
  78. if [ -d /var/spool/mqueue ]; then
  79.     echo ""
  80.     echo "mail:"
  81.     mailq
  82. fi
  83.  
  84. echo ""
  85. echo "network:"
  86. netstat -i
  87.  
  88. echo ""
  89. if [ -d /var/rwho ] ; then
  90.     ruptime
  91. fi
  92.  
  93. echo ""
  94. echo -n "Rotating log files:"
  95. cd /var/log
  96. for i in system.log; do
  97.     if [ -f "${i}" ]; then
  98.     echo -n " ${i}"
  99.     if [ -x /usr/bin/gzip ]; then gzext=".gz"; else gzext=""; fi
  100.     if [ -f "${i}.6${gzext}" ]; then mv -f "${i}.6${gzext}" "${i}.7${gzext}"; fi
  101.     if [ -f "${i}.5${gzext}" ]; then mv -f "${i}.5${gzext}" "${i}.6${gzext}"; fi
  102.     if [ -f "${i}.4${gzext}" ]; then mv -f "${i}.4${gzext}" "${i}.5${gzext}"; fi
  103.     if [ -f "${i}.3${gzext}" ]; then mv -f "${i}.3${gzext}" "${i}.4${gzext}"; fi
  104.     if [ -f "${i}.2${gzext}" ]; then mv -f "${i}.2${gzext}" "${i}.3${gzext}"; fi
  105.     if [ -f "${i}.1${gzext}" ]; then mv -f "${i}.1${gzext}" "${i}.2${gzext}"; fi
  106.     if [ -f "${i}.0${gzext}" ]; then mv -f "${i}.0${gzext}" "${i}.1${gzext}"; fi
  107.     if [ -f "${i}" ]; then mv -f "${i}" "${i}.0" && if [ -x /usr/bin/gzip ]; then gzip -9 "${i}.0"; fi; fi
  108.     touch "${i}" && chmod 640 "${i}"
  109.     fi
  110. done
  111. if [ -f /var/run/syslog.pid ]; then kill -HUP $(cat /var/run/syslog.pid | head -1); fi
  112. echo ""
  113.  
  114. if [ -d /var/log/httpd ]; then
  115.     echo ""
  116.     echo -n "Cleaning web server log files:"
  117.     cd /var/log/httpd && \
  118.     find . -type f -name '*_log.*' -mtime +7 -exec rm -f -- {} \; >/dev/null 2>&1;
  119. fi
  120.  
  121. if [ -f /etc/daily.local ]; then
  122.     echo ""
  123.     echo "Running daily.local:"
  124.     sh /etc/daily.local
  125. fi
  126.  
  127. if [ -f /etc/security ]; then
  128.     echo ""
  129.     echo "Running security:"
  130.     sh /etc/security 2>&1 | sendmail root
  131. fi
  132.