aboutsummaryrefslogtreecommitdiff
path: root/etc/periodic
diff options
context:
space:
mode:
Diffstat (limited to 'etc/periodic')
-rw-r--r--etc/periodic/Makefile5
-rw-r--r--etc/periodic/Makefile.inc12
-rwxr-xr-xetc/periodic/daily/100.clean-disks15
-rwxr-xr-xetc/periodic/daily/110.clean-tmps32
-rwxr-xr-xetc/periodic/daily/120.clean-preserve10
-rwxr-xr-xetc/periodic/daily/130.clean-msgs11
-rwxr-xr-xetc/periodic/daily/140.clean-rwho11
-rwxr-xr-xetc/periodic/daily/200.backup-passwd35
-rwxr-xr-xetc/periodic/daily/210.backup-aliases22
-rwxr-xr-xetc/periodic/daily/220.backup-distfile15
-rwxr-xr-xetc/periodic/daily/300.calendar17
-rwxr-xr-xetc/periodic/daily/310.accounting15
-rwxr-xr-xetc/periodic/daily/320.rdist10
-rwxr-xr-xetc/periodic/daily/330.news11
-rwxr-xr-xetc/periodic/daily/340.uucp13
-rwxr-xr-xetc/periodic/daily/400.status-disks14
-rwxr-xr-xetc/periodic/daily/410.status-uucp10
-rwxr-xr-xetc/periodic/daily/420.status-network10
-rwxr-xr-xetc/periodic/daily/430.status-rwho10
-rwxr-xr-xetc/periodic/daily/440.status-mailq10
-rwxr-xr-xetc/periodic/daily/450.status-security11
-rwxr-xr-xetc/periodic/daily/999.local13
-rw-r--r--etc/periodic/daily/Makefile24
-rwxr-xr-xetc/periodic/monthly/200.accounting11
-rwxr-xr-xetc/periodic/monthly/999.local10
-rw-r--r--etc/periodic/monthly/Makefile6
-rwxr-xr-xetc/periodic/weekly/100.clean-src42
-rwxr-xr-xetc/periodic/weekly/120.clean-kvmdb15
-rwxr-xr-xetc/periodic/weekly/300.uucp12
-rwxr-xr-xetc/periodic/weekly/310.locate18
-rwxr-xr-xetc/periodic/weekly/320.whatis18
-rwxr-xr-xetc/periodic/weekly/330.catman12
-rwxr-xr-xetc/periodic/weekly/999.local10
-rw-r--r--etc/periodic/weekly/Makefile11
34 files changed, 501 insertions, 0 deletions
diff --git a/etc/periodic/Makefile b/etc/periodic/Makefile
new file mode 100644
index 000000000000..6317cdb63d36
--- /dev/null
+++ b/etc/periodic/Makefile
@@ -0,0 +1,5 @@
+# $Id: Makefile,v 1.1 1997/08/12 18:23:24 pst Exp $
+
+SUBDIR= daily weekly monthly
+
+.include <bsd.subdir.mk>
diff --git a/etc/periodic/Makefile.inc b/etc/periodic/Makefile.inc
new file mode 100644
index 000000000000..33f7d8bcc3f1
--- /dev/null
+++ b/etc/periodic/Makefile.inc
@@ -0,0 +1,12 @@
+# $Id: Makefile.inc,v 1.1 1997/08/12 18:23:25 pst Exp $
+
+BINDIR= /etc/periodic/${.CURDIR:T}
+BINOWN= root
+BINGRP= wheel
+
+all depend etc lint:
+
+install:
+ cd ${.CURDIR}; \
+ ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 755 ${BIN} \
+ ${DESTDIR}/${BINDIR}
diff --git a/etc/periodic/daily/100.clean-disks b/etc/periodic/daily/100.clean-disks
new file mode 100755
index 000000000000..0df987daa77b
--- /dev/null
+++ b/etc/periodic/daily/100.clean-disks
@@ -0,0 +1,15 @@
+#!/bin/sh
+#
+# $Id: 100.clean-disks,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+# This is a security hole, never use 'find' on a public directory
+# with -exec rm -f as root. This can be exploited to delete any file
+# on the system.
+#
+
+exit 0 # do not run by default
+
+find / \( ! -fstype local -o -fstype rdonly \) -a -prune -o \
+ \( -name '[#,]*' -o -name '.#*' -o -name a.out -o -name '*.core' \
+ -o -name '*.CKP' -o -name '.emacs_[0-9]*' \) \
+ -a -atime +3 -exec rm -f -- {} \;
diff --git a/etc/periodic/daily/110.clean-tmps b/etc/periodic/daily/110.clean-tmps
new file mode 100755
index 000000000000..960c6aa8def1
--- /dev/null
+++ b/etc/periodic/daily/110.clean-tmps
@@ -0,0 +1,32 @@
+#!/bin/sh
+#
+# $Id: 110.clean-tmps,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+# This is a security hole, never use 'find' on a public directory
+# with -exec rm -f as root. This can be exploited to delete any file
+# on the system.
+#
+# Use at your own risk, but for a long-living system, this might come
+# more useful than the boot-time cleaning of /tmp. If /var/tmp and
+# /tmp are symlinked together, only one of the below will actually
+# run.
+#
+
+exit 0 # do not run by default
+
+if [ -d /tmp ]; then
+ cd /tmp && {
+ find . -type f -atime +3 -ctime +3 ! -name '.X*-lock' \
+ -exec rm -f -- {} \;
+ find -d . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \
+ >/dev/null 2>&1
+ }
+fi
+
+if [ -d /var/tmp ]; then
+ cd /var/tmp && {
+ find . ! -name . -atime +7 -ctime +3 -exec rm -f -- {} \;
+ find -d . ! -name . -type d -mtime +1 -exec rmdir -- {} \; \
+ >/dev/null 2>&1
+ }
+fi
diff --git a/etc/periodic/daily/120.clean-preserve b/etc/periodic/daily/120.clean-preserve
new file mode 100755
index 000000000000..a63ccc3e1449
--- /dev/null
+++ b/etc/periodic/daily/120.clean-preserve
@@ -0,0 +1,10 @@
+#!/bin/sh
+#
+# $Id: 120.clean-preserve,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+
+if [ -d /var/preserve ]; then
+ echo ""
+ echo "Removing stale files from /var/preserve:"
+ cd /var/preserve && find . ! -name . -mtime +7 -exec rm -f -- {} \;
+fi
diff --git a/etc/periodic/daily/130.clean-msgs b/etc/periodic/daily/130.clean-msgs
new file mode 100755
index 000000000000..52796415efe9
--- /dev/null
+++ b/etc/periodic/daily/130.clean-msgs
@@ -0,0 +1,11 @@
+#!/bin/sh
+#
+# $Id: 130.clean-msgs,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+# remove system messages older than 21 days
+#
+if [ -d /var/msgs ] ; then
+ echo
+ echo "Cleaning out old system announcements:"
+ msgs -c
+fi
diff --git a/etc/periodic/daily/140.clean-rwho b/etc/periodic/daily/140.clean-rwho
new file mode 100755
index 000000000000..3a20deecbca2
--- /dev/null
+++ b/etc/periodic/daily/140.clean-rwho
@@ -0,0 +1,11 @@
+#!/bin/sh
+#
+# $Id: 140.clean-rwho,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+
+if [ -d /var/rwho ] ; then
+ echo ""
+ echo "Removing stale files from /var/rwho"
+ cd /var/rwho && find . ! -name . -mtime +7 -exec rm -f -- {} \;
+fi
+
diff --git a/etc/periodic/daily/200.backup-passwd b/etc/periodic/daily/200.backup-passwd
new file mode 100755
index 000000000000..bc2f8e9e778a
--- /dev/null
+++ b/etc/periodic/daily/200.backup-passwd
@@ -0,0 +1,35 @@
+#!/bin/sh
+#
+# $Id: 200.backup-passwd,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+bak=/var/backups
+
+if [ -f /etc/master.passwd -o -f /etc/group ] ; then
+ echo ""
+ echo "Backup passwd and group files:"
+
+ if [ ! -f $bak/master.passwd.bak ] ; then
+ echo "no $bak/master.passwd.bak"
+ cp -p /etc/master.passwd $bak/master.passwd.bak
+ fi
+
+ if cmp -s $bak/master.passwd.bak /etc/master.passwd; then :; else
+ echo "$host passwd diffs:"
+ diff $bak/master.passwd.bak /etc/master.passwd |\
+ sed 's/^\([<>] [^:]*\):[^:]*:/\1:(password):/'
+ mv $bak/master.passwd.bak $bak/master.passwd.bak2
+ cp -p /etc/master.passwd $bak/master.passwd.bak
+ fi
+
+ if [ ! -f $bak/group.bak ] ; then
+ echo "no $bak/group.bak"
+ cp -p /etc/group $bak/group.bak
+ fi
+
+ if cmp -s $bak/group.bak /etc/group; then :; else
+ echo "$host group diffs:"
+ diff $bak/group.bak /etc/group
+ mv $bak/group.bak $bak/group.bak2
+ cp -p /etc/group $bak/group.bak
+ fi
+fi
diff --git a/etc/periodic/daily/210.backup-aliases b/etc/periodic/daily/210.backup-aliases
new file mode 100755
index 000000000000..5e21bb40be22
--- /dev/null
+++ b/etc/periodic/daily/210.backup-aliases
@@ -0,0 +1,22 @@
+#!/bin/sh
+#
+# $Id: 210.backup-aliases,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+bak=/var/backups
+
+if [ -f /etc/aliases ] ; then
+ echo ""
+ echo "Backing up mail aliases:"
+
+ if [ ! -f $bak/aliases.bak ] ; then
+ echo "no $bak/aliases.bak"
+ cp -p /etc/aliases $bak/aliases.bak
+ fi
+
+ if cmp -s $bak/aliases.bak /etc/aliases; then :; else
+ echo "$host aliases diffs:"
+ diff $bak/aliases.bak /etc/aliases
+ mv $bak/aliases.bak $bak/aliases.bak2
+ cp -p /etc/aliases $bak/aliases.bak
+ fi
+fi
diff --git a/etc/periodic/daily/220.backup-distfile b/etc/periodic/daily/220.backup-distfile
new file mode 100755
index 000000000000..59defc49b8c8
--- /dev/null
+++ b/etc/periodic/daily/220.backup-distfile
@@ -0,0 +1,15 @@
+#!/bin/sh
+#
+# $Id: 220.backup-distfile,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+bak=/var/backups
+
+if [ -f /etc/Distfile ]; then
+ echo ""
+ echo "Backing up /etc/Distfile"
+
+ if cmp -s $bak/Distfile.bak /etc/Distfile; then :; else
+ mv $bak/Distfile.bak $bak/Distfile.bak2
+ cp /etc/Distfile $bak/Distfile.bak
+ fi
+fi
diff --git a/etc/periodic/daily/300.calendar b/etc/periodic/daily/300.calendar
new file mode 100755
index 000000000000..8e5d195c6b58
--- /dev/null
+++ b/etc/periodic/daily/300.calendar
@@ -0,0 +1,17 @@
+#!/bin/sh
+#
+# $Id: 300.calendar,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+# `calendar -a' needs to die. Why? Because it's a bad idea, particular
+# with networked home directories, but also in general. If you want the
+# output of `calendar' mailed to you, set up a cron job to do it,
+# or run it from your ~/.profile or ~/.login.
+#
+
+exit 0 # do not run by default
+
+if [ -f /usr/bin/calendar ] ; then
+ echo ""
+ echo "Running calendar:"
+ calendar -a
+fi
diff --git a/etc/periodic/daily/310.accounting b/etc/periodic/daily/310.accounting
new file mode 100755
index 000000000000..9162401b4f84
--- /dev/null
+++ b/etc/periodic/daily/310.accounting
@@ -0,0 +1,15 @@
+#!/bin/sh
+#
+# $Id: 310.accounting,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+
+if [ -f /var/account/acct ] ; then
+ echo ""
+ echo "Rotating accounting logs and gathering statistics:"
+ cd /var/account
+ if [ -f acct.2 ] ; then mv -f acct.2 acct.3 ; fi
+ if [ -f acct.1 ] ; then mv -f acct.1 acct.2 ; fi
+ if [ -f acct.0 ] ; then mv -f acct.0 acct.1 ; fi
+ cp -pf acct acct.0
+ sa -s > /dev/null
+fi
diff --git a/etc/periodic/daily/320.rdist b/etc/periodic/daily/320.rdist
new file mode 100755
index 000000000000..73375faa7e88
--- /dev/null
+++ b/etc/periodic/daily/320.rdist
@@ -0,0 +1,10 @@
+#!/bin/sh
+#
+# $Id: 320.rdist,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+
+if [ -f /etc/Distfile ]; then
+ echo ""
+ echo "Running rdist with /etc/Distfile:"
+ rdist -f /etc/Distfile
+fi
diff --git a/etc/periodic/daily/330.news b/etc/periodic/daily/330.news
new file mode 100755
index 000000000000..2cb3ff958bc6
--- /dev/null
+++ b/etc/periodic/daily/330.news
@@ -0,0 +1,11 @@
+#!/bin/sh
+#
+# $Id: 330.news,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+# Expire news articles
+# (This is present only for backwards compatibility, usually the news
+# system handles this on its own).
+
+if [ -f /etc/news.expire ]; then
+ /etc/news.expire
+fi
diff --git a/etc/periodic/daily/340.uucp b/etc/periodic/daily/340.uucp
new file mode 100755
index 000000000000..d558e0499ac1
--- /dev/null
+++ b/etc/periodic/daily/340.uucp
@@ -0,0 +1,13 @@
+#!/bin/sh
+#
+# $Id: 340.uucp,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+# Local cleanup of UUCP files. This is for backwards compatibility,
+# /etc/uuclean.daily doesn't exist by default.
+#
+if [ -d /var/spool/uucp -a -f /etc/uuclean.daily ]; then
+ echo ""
+ echo "Cleaning up UUCP:"
+ echo /etc/uuclean.daily | su daemon
+fi
+
diff --git a/etc/periodic/daily/400.status-disks b/etc/periodic/daily/400.status-disks
new file mode 100755
index 000000000000..b7a12d3841e5
--- /dev/null
+++ b/etc/periodic/daily/400.status-disks
@@ -0,0 +1,14 @@
+#!/bin/sh
+#
+# $Id: 400.status-disks,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+
+echo ""
+echo "Disk status:"
+
+df -k -t nonfs
+
+# display which filesystems need backing up
+
+echo ""
+dump W
diff --git a/etc/periodic/daily/410.status-uucp b/etc/periodic/daily/410.status-uucp
new file mode 100755
index 000000000000..1c764216218c
--- /dev/null
+++ b/etc/periodic/daily/410.status-uucp
@@ -0,0 +1,10 @@
+#!/bin/sh
+#
+# $Id: 410.status-uucp,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+
+if [ -d /var/spool/uucp -a -x /usr/bin/uustat ]; then
+ echo ""
+ echo "uucp status:"
+ uustat -a
+fi
diff --git a/etc/periodic/daily/420.status-network b/etc/periodic/daily/420.status-network
new file mode 100755
index 000000000000..e61f31145de5
--- /dev/null
+++ b/etc/periodic/daily/420.status-network
@@ -0,0 +1,10 @@
+#!/bin/sh
+#
+# $Id: 420.status-network,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+
+if [ -x /usr/bin/netstat ] ; then
+ echo ""
+ echo "Network interface status:"
+ netstat -i
+fi
diff --git a/etc/periodic/daily/430.status-rwho b/etc/periodic/daily/430.status-rwho
new file mode 100755
index 000000000000..a86f83e58374
--- /dev/null
+++ b/etc/periodic/daily/430.status-rwho
@@ -0,0 +1,10 @@
+#!/bin/sh
+#
+# $Id: 430.status-rwho,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+
+if [ -d /var/rwho -a -x /usr/bin/rwho ] ; then
+ echo ""
+ echo "Local network system status:"
+ ruptime
+fi
diff --git a/etc/periodic/daily/440.status-mailq b/etc/periodic/daily/440.status-mailq
new file mode 100755
index 000000000000..1a45a51e610a
--- /dev/null
+++ b/etc/periodic/daily/440.status-mailq
@@ -0,0 +1,10 @@
+#!/bin/sh
+#
+# $Id: 440.status-mailq,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+if [ -x /usr/sbin/mailq -a -d /var/spool/mqueue ] ; then
+ echo ""
+ echo "Mail in local queue:"
+
+ mailq
+fi
diff --git a/etc/periodic/daily/450.status-security b/etc/periodic/daily/450.status-security
new file mode 100755
index 000000000000..6a1f040830fa
--- /dev/null
+++ b/etc/periodic/daily/450.status-security
@@ -0,0 +1,11 @@
+#!/bin/sh
+#
+# $Id: 450.status-security,v 1.1.1.1 1997/08/12 17:51:15 pst Exp $
+#
+
+if [ -f /etc/security -a -x /usr/sbin/sendmail ] ; then
+ echo ""
+ echo "Security check (output mailed separately)"
+
+ sh /etc/security 2>&1 | sendmail root
+fi
diff --git a/etc/periodic/daily/999.local b/etc/periodic/daily/999.local
new file mode 100755
index 000000000000..8a48c61284c8
--- /dev/null
+++ b/etc/periodic/daily/999.local
@@ -0,0 +1,13 @@
+#!/bin/sh
+#
+# $Id: 999.local,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+# Run the old /etc/daily.local script. This is really for backwards
+# compatibility more than anything else.
+#
+if [ -f /etc/daily.local ]; then
+ echo ""
+ echo "Running daily.local:"
+
+ sh /etc/daily.local
+fi
diff --git a/etc/periodic/daily/Makefile b/etc/periodic/daily/Makefile
new file mode 100644
index 000000000000..e7019586445e
--- /dev/null
+++ b/etc/periodic/daily/Makefile
@@ -0,0 +1,24 @@
+# $Id: Makefile,v 1.1 1997/08/12 18:23:26 pst Exp $
+
+BIN= 100.clean-disks \
+ 110.clean-tmps \
+ 120.clean-preserve \
+ 130.clean-msgs \
+ 140.clean-rwho \
+ 200.backup-passwd \
+ 210.backup-aliases \
+ 220.backup-distfile \
+ 300.calendar \
+ 310.accounting \
+ 320.rdist \
+ 330.news \
+ 340.uucp \
+ 400.status-disks \
+ 410.status-uucp \
+ 420.status-network \
+ 430.status-rwho \
+ 440.status-mailq \
+ 450.status-security \
+ 999.local
+
+.include <bsd.prog.mk>
diff --git a/etc/periodic/monthly/200.accounting b/etc/periodic/monthly/200.accounting
new file mode 100755
index 000000000000..14ca582e43c6
--- /dev/null
+++ b/etc/periodic/monthly/200.accounting
@@ -0,0 +1,11 @@
+#!/bin/sh -
+#
+# $Id: 200.accounting,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+
+if [ -x /usr/sbin/ac ] ; then
+ echo ""
+ echo "Doing login accounting:"
+
+ ac -p | sort -nr +1
+fi
diff --git a/etc/periodic/monthly/999.local b/etc/periodic/monthly/999.local
new file mode 100755
index 000000000000..9eec52bec041
--- /dev/null
+++ b/etc/periodic/monthly/999.local
@@ -0,0 +1,10 @@
+#!/bin/sh -
+#
+# $Id: 999.local,v 1.1 1997/08/12 18:23:27 pst Exp $
+#
+if [ -f /etc/monthly.local ]; then
+ echo ""
+ echo "Running monthly.local:"
+
+ sh /etc/monthly.local
+fi
diff --git a/etc/periodic/monthly/Makefile b/etc/periodic/monthly/Makefile
new file mode 100644
index 000000000000..e73251b7ae45
--- /dev/null
+++ b/etc/periodic/monthly/Makefile
@@ -0,0 +1,6 @@
+# $Id: Makefile,v 1.1 1997/08/12 18:23:28 pst Exp $
+
+BIN= 200.accounting \
+ 999.local
+
+.include <bsd.prog.mk>
diff --git a/etc/periodic/weekly/100.clean-src b/etc/periodic/weekly/100.clean-src
new file mode 100755
index 000000000000..230dff1d2941
--- /dev/null
+++ b/etc/periodic/weekly/100.clean-src
@@ -0,0 +1,42 @@
+#!/bin/sh -
+#
+# $Id: 100.clean-src,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+# Clean up /usr/src
+#
+# This really hasn't been used in generations, it's just here for
+# backwards compatibility -- we don't even use SCCS anymore
+#
+
+exit 0 # do not run by default
+
+# see if /usr/src exists and is local before doing anything
+
+if [ -d /usr/src -a \
+ X"`find -f /usr/src ! -fstype local -prune -or -type d -print -prune`" != X ];
+then
+
+ echo ""
+ echo "Removing old .o files from /usr/src:"
+
+ find /usr/src -name '*.o' -atime +21 -print -a -exec rm -f {} \;
+
+ echo "looking for checked out files in /usr/src:"
+ TDIR=/tmp/_checkout$$
+
+ mkdir $TDIR
+
+ for file in `find -f /usr/src ! -fstype local -prune -or \
+ -name 'p.*' -print | egrep 'SCCS/p\.'`; do
+ owner=`awk '{ print $3 }' $file`
+ echo "$owner $file"
+ echo $file >> $TDIR/$owner
+ done | sed -e 's,SCCS/p.,,'
+
+ for file in $TDIR/*; do
+ sed -e 's,SCCS/p.,,' $file | \
+ Mail -s 'checked out files' `basename $file`
+ done
+
+ rm -rf $TDIR
+fi
diff --git a/etc/periodic/weekly/120.clean-kvmdb b/etc/periodic/weekly/120.clean-kvmdb
new file mode 100755
index 000000000000..24d8aa2b904a
--- /dev/null
+++ b/etc/periodic/weekly/120.clean-kvmdb
@@ -0,0 +1,15 @@
+#!/bin/sh -
+#
+# $Id: 120.clean-kvmdb,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+
+if [ -d /var/db -a -x /usr/sbin/sysctl ] ; then
+ echo ""
+ echo "Cleaning up kernel database files:"
+
+ kernel=`sysctl -n kern.bootfile`
+ kernel=kvm_`basename ${kernel}`.db
+
+ find /var/db -name "kvm_*.db" -a ! -name ${kernel} -a \
+ -atime +7 -exec rm -f -- {} \;
+fi
diff --git a/etc/periodic/weekly/300.uucp b/etc/periodic/weekly/300.uucp
new file mode 100755
index 000000000000..eceb2c64f064
--- /dev/null
+++ b/etc/periodic/weekly/300.uucp
@@ -0,0 +1,12 @@
+#!/bin/sh -
+#
+# $Id: 300.uucp,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+# This is really here for backwards compatibility, clean.weekly is not
+# created by default anymore.
+
+if [ -d /var/spool/uucp -a -f /usr/libexec/uucp/clean.weekly ]; then
+ echo ""
+ echo "Cleaning up UUCP:"
+ echo /usr/libexec/uucp/clean.weekly | su daemon
+fi
diff --git a/etc/periodic/weekly/310.locate b/etc/periodic/weekly/310.locate
new file mode 100755
index 000000000000..cfe37ff1ba6b
--- /dev/null
+++ b/etc/periodic/weekly/310.locate
@@ -0,0 +1,18 @@
+#!/bin/sh -
+#
+# $Id: 310.locate,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+locdb=/var/db/locate.database
+
+if [ -x /usr/libexec/locate.updatedb -a -f $locdb ] ; then
+
+ echo ""
+ echo "Rebuilding locate database:"
+
+ touch ${locdb}; chown nobody ${locdb}; chmod 644 ${locdb}
+
+ echo /usr/libexec/locate.updatedb | nice -5 su -fm nobody 2>&1 |\
+ fgrep -v 'Permission denied'
+
+ chmod 444 ${locdb}
+fi
diff --git a/etc/periodic/weekly/320.whatis b/etc/periodic/weekly/320.whatis
new file mode 100755
index 000000000000..6ae23a4f9337
--- /dev/null
+++ b/etc/periodic/weekly/320.whatis
@@ -0,0 +1,18 @@
+#!/bin/sh -
+#
+# $Id: 320.whatis,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+
+if [ -x /usr/libexec/makewhatis.local -a -d /usr/share/man ] ; then
+
+ echo ""
+ echo "Rebuilding whatis database:"
+
+ if [ -d /usr/X11R6/man ] ; then
+ MANPATH=${MANPATH:-/usr/share/man:/usr/X11R6/man:/usr/local/man}
+ else
+ MANPATH=${MANPATH:-/usr/share/man:/usr/local/man}
+ fi
+
+ /usr/libexec/makewhatis.local "${MANPATH}"
+fi
diff --git a/etc/periodic/weekly/330.catman b/etc/periodic/weekly/330.catman
new file mode 100755
index 000000000000..cc2030e7392e
--- /dev/null
+++ b/etc/periodic/weekly/330.catman
@@ -0,0 +1,12 @@
+#!/bin/sh -
+#
+# $Id: 330.catman,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+
+exit 0 # do not run by default
+
+if [ -x /usr/libexec/catman.local -a -d /usr/share/man/cat1 ] ; then
+ echo ""
+ echo "Reformatting manual pages:"
+ echo /usr/libexec/catman.local "${MANPATH}" | su -fm man
+fi
diff --git a/etc/periodic/weekly/999.local b/etc/periodic/weekly/999.local
new file mode 100755
index 000000000000..fb9606edb64c
--- /dev/null
+++ b/etc/periodic/weekly/999.local
@@ -0,0 +1,10 @@
+#!/bin/sh -
+#
+# $Id: 999.local,v 1.1.1.1 1997/08/12 17:51:16 pst Exp $
+#
+
+if [ -f /etc/weekly.local ]; then
+ echo ""
+ echo "Running weekly.local:"
+ sh /etc/weekly.local
+fi
diff --git a/etc/periodic/weekly/Makefile b/etc/periodic/weekly/Makefile
new file mode 100644
index 000000000000..753b7f6bf014
--- /dev/null
+++ b/etc/periodic/weekly/Makefile
@@ -0,0 +1,11 @@
+# $Id: Makefile,v 1.2 1997/08/12 23:11:24 adam Exp $
+
+BIN= 100.clean-src \
+ 120.clean-kvmdb \
+ 300.uucp \
+ 310.locate \
+ 320.whatis \
+ 330.catman \
+ 999.local
+
+.include <bsd.prog.mk>