xref: /dragonfly/share/man/man5/periodic.conf.5 (revision ae24b5e0)
1.\"-
2.\" Copyright (c) 2000 Brian Somers <brian@Awfulhak.org>
3.\" All rights reserved.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\"    notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\"    notice, this list of conditions and the following disclaimer in the
12.\"    documentation and/or other materials provided with the distribution.
13.\"
14.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24.\" SUCH DAMAGE.
25.\"
26.\" $FreeBSD: src/share/man/man5/periodic.conf.5,v 1.8.2.22 2003/02/08 21:42:01 gshapiro Exp $
27.\"
28.Dd June 9, 2016
29.Dt PERIODIC.CONF 5
30.Os
31.Sh NAME
32.Nm periodic.conf
33.Nd periodic job configuration information
34.Sh DESCRIPTION
35The file
36.Nm
37contains a description of how daily, weekly and monthly system maintenance
38jobs should run.
39It resides in the
40.Pa /etc/defaults
41directory and parts may be overridden by a file of the same name in
42.Pa /etc ,
43which itself may be overridden by the
44.Pa /etc/periodic.conf.local
45file.
46.Pp
47.Nm
48is actually sourced as a shell script from each of the periodic scripts
49and is intended to simply provide default configuration variables.
50.Pp
51The following variables are used by
52.Xr periodic 8
53itself:
54.Bl -tag -offset 4n -width 2n
55.It Va local_periodic
56.Pq Vt str
57List of directories to search for periodic scripts.
58This list is always prefixed with
59.Pa /etc/periodic ,
60and is only used when an argument to
61.Xr periodic 8
62is not an absolute directory name.
63.It Va dir Ns No _output
64.Pq Vt path No or Vt list
65What to do with the output of the scripts envoked from
66the directory
67.Ar dir .
68If this variable is set to an absolute path name, output is logged to
69that file, otherwise it is taken as one or more space separated email
70addresses and mailed to those users.
71If this variable is not set or is empty, output is sent to standard output.
72.Pp
73For an unattended machine, suitable values for
74.Va daily_output ,
75.Va weekly_output ,
76and
77.Va monthly_output
78might be
79.Pa /var/log/daily.log ,
80.Pa /var/log/weekly.log ,
81and
82.Pa /var/log/monthly.log
83respectively, as
84.Xr newsyslog 8
85will rotate these files (if they exists) at the appropriate times.
86.It Va dir Ns No _show_success
87.It Va dir Ns No _show_info
88.It Va dir Ns No _show_badconfig
89.Pq Vt bool
90These variables control whether
91.Xr periodic 8
92will mask the output of the envoked scripts based on their return code
93(where
94.Ar dir
95is the base directory name in which each script resides).
96If the return code of a script is
97.Sq 0
98and
99.Va dir Ns No _show_success
100is set to
101.Dq NO ,
102.Xr periodic 8
103will mask the script's output.
104If the return code of a script is
105.Sq 1
106and
107.Va dir Ns No _show_info
108is set to
109.Dq NO ,
110.Xr periodic 8
111will mask the script's output.
112If the return code of a script is
113.Sq 2
114and
115.Va dir Ns No _show_badconfig
116is set to
117.Dq NO ,
118.Xr periodic 8
119will mask the script's output.
120If these variables are set to neither
121.Dq YES
122nor
123.Dq NO ,
124they default to
125.Dq YES ,
126.Dq YES
127and
128.Dq NO
129respectively.
130.Pp
131Refer to the
132.Xr periodic 8
133man page for how script return codes are interpreted.
134.El
135.Pp
136The following variables are used by the standard scripts that reside in
137.Pa /etc/periodic/daily :
138.Bl -tag -offset 4n -width 2n
139.It Va daily_clean_disks_enable
140.Pq Vt bool
141Set to
142.Dq YES
143if you want to remove all files matching
144.Va daily_clean_disks_files
145daily.
146.It Va daily_clean_disks_files
147.Pq Vt str
148Set to a list of file names to match.
149Wild cards are permitted.
150.It Va daily_clean_disks_days
151.Pq Vt num
152When
153.Va daily_clean_disks_enable
154is set to
155.Dq YES ,
156this must also be set to the number of days old that a file's access
157and modification times must be before it's deleted.
158.It Va daily_clean_disks_verbose
159.Pq Vt bool
160Set to
161.Dq YES
162if you want the removed files to be reported in your daily output.
163.It Va daily_clean_tmps_enable
164.Pq Vt bool
165Set to
166.Dq YES
167if you want to clear temporary directories daily.
168.It Va daily_clean_tmps_dirs
169.Pq Vt str
170Set to the list of directories to clear if
171.Va daily_clean_tmps_enable
172is set to
173.Dq YES .
174.It Va daily_clean_tmps_days
175.Pq Vt num
176When
177.Va daily_clean_tmps_enable
178is set, this must also be set to the number of days old that a file's access
179and modification times must be before it's deleted.
180.It Va daily_clean_tmps_ignore
181.Pq Vt str
182Set to the list of files that should not be deleted when
183.Va daily_clean_tmps_enable
184is set to
185.Dq YES .
186Wild card characters are permitted.
187.It Va daily_clean_tmps_verbose
188.Pq Vt bool
189Set to
190.Dq YES
191if you want the removed files to be reported in your daily output.
192.It Va daily_clean_preserve_enable
193.Pq Vt bool
194Set to
195.Dq YES
196if you wish to remove old files from
197.Pa /var/preserve .
198.It Va daily_clean_preserve_days
199.Pq Vt num
200Set to the number of days that files must not have been modified before
201they are deleted.
202.It Va daily_clean_preserve_verbose
203.Pq Vt bool
204Set to
205.Dq YES
206if you want the removed files to be reported in your daily output.
207.It Va daily_clean_msgs_enable
208.Pq Vt bool
209Set to
210.Dq YES
211if you wish old system messages to be purged.
212.It Va daily_clean_msgs_days
213.Pq Vt num
214Set to the number of days that files must not have been modified before
215they are deleted.
216If this variable is left blank, the
217.Xr msgs 1
218default is used.
219.It Va daily_clean_rwho_enable
220.Pq Vt bool
221Set to
222.Dq YES
223if you wish old files in
224.Pa /var/who
225to be purged.
226.It Va daily_clean_rwho_days
227.Pq Vt num
228Set to the number of days that files must not have been modified before
229they are deleted.
230.It Va daily_clean_rwho_verbose
231.Pq Vt bool
232Set to
233.Dq YES
234if you want the removed files to be reported in your daily output.
235.It Va daily_clean_hoststat_enable
236.Pq Vt bool
237Set to
238.Dq YES
239to run
240.Nm sendmail Fl bH
241to automatically purge stale entries from
242.Xr sendmail 8 Ns 's
243host status cache.
244Files will be deleted using the same criteria as
245.Xr sendmail 8
246would normally use when determining whether to believe the cached information,
247as configured in
248.Pa /etc/mail/sendmail.cf .
249.It Va daily_clean_hammer_enable
250.Pq Vt bool
251Set to
252.Dq YES
253if you want
254.Xr HAMMER 5
255file systems to be snapshot, pruned and reblocked.
256.It Va daily_clean_hammer_verbose
257.Pq Vt bool
258Set to
259.Dq YES
260if you wish more verbose output.
261.It Va daily_clean_hammer_pfslist
262.Pq Vt str
263Set to a list of
264.Xr HAMMER 5
265filesystems and pseudo-filesystems to clean.
266If this variable is left blank, the default
267.Xr hammer 8
268.Ic cleanup
269actions occur.
270.It Va daily_backup_passwd_enable
271.Pq Vt bool
272Set to
273.Dq YES
274if you want the
275.Pa /etc/master.passwd
276and
277.Pa /etc/group
278files backed up and reported on.
279Reporting consists of checking both files for modifications and running
280.Xr chkgrp 8
281on the
282.Pa group
283file.
284.It Va daily_backup_aliases_enable
285.Pq Vt bool
286Set to
287.Dq YES
288if you want the
289.Pa /etc/mail/aliases
290file backed up and modifications to be displayed in your daily output.
291.It Va daily_backup_distfile_enable
292.Pq Vt bool
293Set to
294.Dq YES
295if you want the
296.Pa /etc/Distfile
297file backed up and modifications to be displayed in your daily output.
298.It Va daily_calendar_enable
299.Pq Vt bool
300Set to
301.Dq YES
302if you want to run
303.Ic calendar -a
304daily.
305.It Va daily_accounting_enable
306.Pq Vt bool
307Set to
308.Dq YES
309if you want to rotate your daily accounting files.
310No rotations are necessary unless
311.Va accounting_enable
312is enabled in
313.Xr rc.conf 5 .
314.It Va daily_accounting_compress
315.Pq Vt bool
316Set to
317.Dq YES
318if you want your daily accounting files to be compressed using
319.Xr gzip 1 .
320.It Va daily_accounting_save
321.Pq Vt num
322When
323.Va daily_accounting_enable
324is set, this may also be set to the number of daily accounting files that are
325to be saved.
326The default is
327.Dq 3 .
328.It Va daily_accounting_flags
329.Pq Vt str
330Set to the arguments to pass to the
331.Xr sa 8
332utility (in addition to
333.Fl s )
334when
335.Va daily_accounting_enable
336is set to
337.Dq YES .
338The default is
339.Fl q .
340.It Va daily_distfile_enable
341.Pq Vt bool
342Set to
343.Dq YES
344if you want to run
345.Xr rdist 1
346daily.
347The
348.Pa /etc/Distfile
349file must also exist.
350.It Va daily_news_expire_enable
351.Pq Vt bool
352Set to
353.Dq YES
354if you want to run
355.Pa /etc/news.expire .
356.It Va daily_status_disks_enable
357.Pq Vt bool
358Set to
359.Dq YES
360if you want to run
361.Xr df 1
362(with the arguments supplied in
363.Va daily_status_disks_df_flags )
364and
365.Ic dump -W .
366.It Va daily_status_disks_df_flags
367.Pq Vt str
368Set to the arguments for the
369.Xr df 1
370utility when
371.Va daily_status_disks_enable
372is set to
373.Dq YES .
374.It Va daily_status_network_enable
375.Pq Vt bool
376Set to
377.Dq YES
378if you want to run
379.Ic netstat -i .
380.It Va daily_status_network_usedns
381.Pq Vt bool
382Set to
383.Dq YES
384if you want to run
385.Xr netstat 1
386without the
387.Fl n
388option (to do DNS lookups).
389.It Va daily_status_rwho_enable
390.Pq Vt bool
391Set to
392.Dq YES
393if you want to run
394.Xr uptime 1
395(or
396.Xr ruptime 1
397if
398.Va rwhod_enable
399is set to
400.Dq YES
401in
402.Pa /etc/rc.conf ) .
403.It Va daily_status_mailq_enable
404.Pq Vt bool
405Set to
406.Dq YES
407if you want to run
408.Xr mailq 1 .
409.It Va daily_status_mailq_shorten
410.Pq Vt bool
411Set to
412.Dq YES
413if you want to shorten the
414.Nm mailq
415output when
416.Va daily_status_mailq_enable
417is set to
418.Dq YES .
419.It Va daily_status_include_submit_mailq
420.Pq Vt bool
421Set to
422.Dq YES
423if you also want to run
424.Xr mailq 1
425on the submit mail queue when
426.Va daily_status_mailq_enable
427is set to
428.Dq YES .
429This may not work with MTAs other than
430.Xr sendmail 8 .
431.It Va daily_status_security_enable
432.Pq Vt bool
433Set to
434.Dq YES
435if you want to run the security check.
436The security check is another set of
437.Xr periodic 8
438scripts.
439The system defaults are in
440.Pa /etc/periodic/security .
441Local scripts should be placed in
442.Pa /usr/local/etc/periodic/security .
443See the
444.Xr periodic 8
445manual page for more information.
446.It Va daily_status_security_inline
447.Pq Vt bool
448Set to
449.Dq YES
450if you want the security check output inline.
451The default is to either mail or log the output according to the value of
452.Va daily_status_security_output .
453.It Va daily_status_security_logdir
454.Pq Vt str
455The directory where the security scripts expect the system's log files.
456.It Va daily_status_security_output
457.Pq Vt str
458Where to send the output of the security check if
459.Va daily_status_security_inline
460is set to
461.Dq NO .
462This variable behaves in the same way as the
463.Va *_output
464variables above, namely it can be set either to one or more email addresses
465or to an absolute file name.
466.It Va daily_status_security_diff_flags
467.Pq Vt str
468Set to the arguments to pass to the
469.Xr diff 1
470utility when generating differences.
471The default is
472.Fl u .
473.It Va daily_status_security_chksetuid_enable
474.Pq Vt bool
475Set to
476.Dq YES
477to compare the modes and modification times of setuid executables with
478the previous day's values.
479.It Va daily_status_security_chkmounts_enable
480.Pq Vt bool
481Set to
482.Dq YES
483to check for changes in mounted filesystems to the previous day's values.
484.It Va daily_status_security_chkmounts_ignore
485Set to the list of filesystem types that should not be checked when
486.Va daily_status_security_chkmounts_enable
487is set to
488.Dq YES .
489.It Va daily_status_security_nomfs
490.Pq Vt bool
491Set to
492.Dq YES
493if you want to ignore
494.Xr mfs 8
495mounts when comparing against yesterdays filesystem mounts in the
496.Va daily_status_security_chkmounts_enable
497check.
498.It Va daily_status_security_chkuid0_enable
499.Pq Vt bool
500Set to
501.Dq YES
502to check
503.Pa /etc/master.passwd
504for accounts with uid 0.
505.It Va daily_status_security_passwdless_enable
506.Pq Vt bool
507Set to
508.Dq YES
509to check
510.Pa /etc/master.passwd
511for accounts with empty passwords.
512.It Va daily_status_security_logincheck_enable
513.Pq Vt bool
514Set to
515.Dq Li YES
516to check
517.Pa /etc/login.conf
518ownership, see
519.Xr login.conf 5
520for more information.
521.It Va daily_status_security_ipfwdenied_enable
522.Pq Vt bool
523Set to
524.Dq YES
525to show log entries for packets denied by
526.Xr ipfw 8
527since yesterday's check.
528.It Va daily_status_security_pfdenied_enable
529.Pq Vt bool
530Set to
531.Dq YES
532to show log entries for packets denied by
533.Xr pf 4
534since yesterday's check.
535.It Va daily_status_security_ipfwlimit_enable
536.Pq Vt bool
537Set to
538.Dq YES
539to display
540.Xr ipfw 8
541rules that have reached their verbosity limit.
542.It Va daily_status_security_ip6fwdenied_enable
543.Pq Vt bool
544Set to
545.Dq YES
546to show log entries for packets denied by
547.Xr ip6fw 8
548since yesterday's check.
549.It Va daily_status_security_ip6fwlimit_enable
550.Pq Vt bool
551Set to
552.Dq YES
553to display
554.Xr ip6fw 8
555rules that have reached their verbosity limit.
556.It Va daily_status_security_kernelmsg_enable
557.Pq Vt bool
558Set to
559.Dq YES
560to show new
561.Xr dmesg 8
562entries since yesterday's check.
563.It Va daily_status_security_loginfail_enable
564.Pq Vt bool
565Set to
566.Dq YES
567to display failed logins from
568.Pa /var/log/messages
569in the previous day.
570.It Va daily_status_security_tcpwrap_enable
571.Pq Vt bool
572Set to
573.Dq YES
574to display connections denied by tcpwrappers (see
575.Xr hosts_access 5 )
576from
577.Pa /var/log/messages
578during the previous day.
579.It Va daily_status_mail_rejects_enable
580.Pq Vt bool
581Set to
582.Dq YES
583if you want to summarise mail rejections logged to
584.Pa /var/log/maillog
585for the previous day.
586.It Va daily_status_mail_rejects_logs
587.Pq Vt num
588Set to the number of maillog files that should be checked
589for yesterday's mail rejects.
590.It Va daily_status_named_enable
591.Pq Vt bool
592Set to
593.Dq YES
594if you want to summarise denied zone transfers (AXFR and IXFR)
595for the previous day.
596.It Va daily_status_named_usedns
597.Pq Vt bool
598Set to
599.Dq YES
600if you want to enable reverse DNS lookups.
601.It Va daily_queuerun_enable
602.Pq Vt bool
603Set to
604.Dq YES
605if you want to manually run the mail queue at least once a day.
606.It Va daily_submit_queuerun
607.Pq Vt bool
608Set to
609.Dq YES
610if you also want to manually run the submit mail queue at least once a day
611when
612.Va daily_queuerun_enable
613is set to
614.Dq YES .
615.It Va daily_local
616.Pq Vt str
617Set to a list of extra scripts that should be run after all other
618daily scripts.
619All scripts must be absolute path names.
620.El
621.Pp
622The following variables are used by the standard scripts that reside in
623.Pa /etc/periodic/weekly :
624.Bl -tag -offset 4n -width 2n
625.It Va weekly_clean_kvmdb_enable
626.Pq Vt bool
627Set to
628.Dq YES
629if you want to purge old
630.Pa /var/db/kvm_*.db
631files.
632The kvm file for the current kernel will not be purged.
633.It Va weekly_clean_kvmdb_days
634.Pq Vt num
635Set to the number of days that the file must not have been accessed
636before being deleted.
637.It Va weekly_clean_kvmdb_verbose
638.Pq Vt bool
639Set to
640.Dq YES
641if you want the removed files to be reported in your weekly output.
642.It Va weekly_locate_enable
643.Pq Vt bool
644Set to
645.Dq YES
646if you want to run
647.Pa /usr/libexec/locate.updatedb .
648This script is run using
649.Ic nice -5
650as user
651.An nobody ,
652and generates the table used by the
653.Xr locate 1
654command.
655.It Va weekly_whatis_enable
656.Pq Vt bool
657Set to
658.Dq YES
659if you want to run
660.Pa /usr/libexec/makewhatis.local .
661This script regenerates the database used by the
662.Xr apropos 1
663command.
664.It Va weekly_catman_enable
665.Pq Vt bool
666Set to
667.Dq YES
668if you want to run
669.Pa /usr/libexec/catman.local .
670This script processes all out of date man pages, speeding up the
671.Xr man 1
672command at the expense of disk space.
673.It Va weekly_noid_enable
674.Pq Vt bool
675Set to
676.Dq YES
677if you want to locate orphaned files on the system.
678An orphaned file is one with an invalid owner or group.
679.It Va weekly_noid_dirs
680.Pq Vt str
681A list of directories under which orphaned files are searched for.
682This would usually be set to
683.Pa / .
684.It Va weekly_local
685.Pq Vt str
686Set to a list of extra scripts that should be run after all other
687weekly scripts.
688All scripts must be absolute path names.
689.El
690.Pp
691The following variables are used by the standard scripts that reside in
692.Pa /etc/periodic/monthly :
693.Bl -tag -offset 4n -width 2n
694.It Va monthly_accounting_enable
695.Pq Vt bool
696Set to
697.Dq YES
698if you want to do login accounting using the
699.Xr ac 8
700command.
701.It Va monthly_statistics_enable
702.Pq Vt bool
703Set to
704.Dq YES
705if you want to report non-identifying information about the OS to the
706.Pa http://www.bsdstats.org
707community site on the internet.
708.It Va monthly_statistics_report_devices
709.Pq Vt bool
710When
711.Va monthly_statistics_report_devices
712is set, this may also be set to report additional device statistics.
713.It Va monthly_local
714.Pq Vt str
715Set to a list of extra scripts that should be run after all other
716monthly scripts.
717All scripts must be absolute path names.
718.El
719.Sh FILES
720.Bl -tag -width /etc/defaults/periodic.conf
721.It Pa /etc/defaults/periodic.conf
722The default configuration file.
723This file contains all default variables and values.
724.It Pa /etc/periodic.conf
725The usual system specific variable override file.
726.It Pa /etc/periodic.conf.local
727An additional override file, useful when
728.Pa /etc/periodic.conf
729is shared or distributed.
730.El
731.Sh SEE ALSO
732.Xr apropos 1 ,
733.Xr calendar 1 ,
734.Xr df 1 ,
735.Xr diff 1 ,
736.Xr gzip 1 ,
737.Xr locate 1 ,
738.Xr man 1 ,
739.Xr msgs 1 ,
740.Xr netstat 1 ,
741.Xr nice 1 ,
742.Xr rdist 1 ,
743.Xr rc.conf 5 ,
744.Xr ac 8 ,
745.Xr chkgrp 8 ,
746.Xr dump 8 ,
747.Xr mfs 8 ,
748.Xr newsyslog 8 ,
749.Xr periodic 8 ,
750.Xr sendmail 8
751.Sh HISTORY
752The
753.Nm
754file appeared in
755.Fx 4.1 .
756.Sh AUTHORS
757.An Brian Somers Aq Mt brian@Awfulhak.org .
758