xref: /dragonfly/share/man/man5/periodic.conf.5 (revision dd491ed2)
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 September 3, 2017
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_clean_hammer2_enable
271.Pq Vt bool
272Set to
273.Dq YES
274if you want
275to run
276.Xr hammer2 8
277.Cm cleanup .
278This will e.g.\&
279.Ic bulkfree
280.Xr hammer2 8
281file systems.
282.It Va daily_clean_hammer2_verbose
283.Pq Vt bool
284Set to
285.Dq YES
286if you wish more verbose output.
287.It Va daily_clean_hammer2_pfslist
288.Pq Vt str
289Set to a list of
290.Xr hammer2 8
291filesystems and pseudo-filesystems to clean.
292If this variable is left blank, the default
293.Xr hammer2 8
294.Ic cleanup
295actions occur.
296.It Va daily_backup_passwd_enable
297.Pq Vt bool
298Set to
299.Dq YES
300if you want the
301.Pa /etc/master.passwd
302and
303.Pa /etc/group
304files backed up and reported on.
305Reporting consists of checking both files for modifications and running
306.Xr chkgrp 8
307on the
308.Pa group
309file.
310.It Va daily_backup_aliases_enable
311.Pq Vt bool
312Set to
313.Dq YES
314if you want the
315.Pa /etc/mail/aliases
316file backed up and modifications to be displayed in your daily output.
317.It Va daily_calendar_enable
318.Pq Vt bool
319Set to
320.Dq YES
321if you want to run
322.Ic calendar -a
323daily.
324.It Va daily_accounting_enable
325.Pq Vt bool
326Set to
327.Dq YES
328if you want to rotate your daily accounting files.
329No rotations are necessary unless
330.Va accounting_enable
331is enabled in
332.Xr rc.conf 5 .
333.It Va daily_accounting_compress
334.Pq Vt bool
335Set to
336.Dq YES
337if you want your daily accounting files to be compressed using
338.Xr gzip 1 .
339.It Va daily_accounting_save
340.Pq Vt num
341When
342.Va daily_accounting_enable
343is set, this may also be set to the number of daily accounting files that are
344to be saved.
345The default is
346.Dq 3 .
347.It Va daily_accounting_flags
348.Pq Vt str
349Set to the arguments to pass to the
350.Xr sa 8
351utility (in addition to
352.Fl s )
353when
354.Va daily_accounting_enable
355is set to
356.Dq YES .
357The default is
358.Fl q .
359.It Va daily_news_expire_enable
360.Pq Vt bool
361Set to
362.Dq YES
363if you want to run
364.Pa /etc/news.expire .
365.It Va daily_status_disks_enable
366.Pq Vt bool
367Set to
368.Dq YES
369if you want to run
370.Xr df 1
371(with the arguments supplied in
372.Va daily_status_disks_df_flags )
373and
374.Ic dump -W .
375.It Va daily_status_disks_df_flags
376.Pq Vt str
377Set to the arguments for the
378.Xr df 1
379utility when
380.Va daily_status_disks_enable
381is set to
382.Dq YES .
383.It Va daily_status_network_enable
384.Pq Vt bool
385Set to
386.Dq YES
387if you want to run
388.Ic netstat -i .
389.It Va daily_status_network_usedns
390.Pq Vt bool
391Set to
392.Dq YES
393if you want to run
394.Xr netstat 1
395without the
396.Fl n
397option (to do DNS lookups).
398.It Va daily_status_rwho_enable
399.Pq Vt bool
400Set to
401.Dq YES
402if you want to run
403.Xr uptime 1
404(or
405.Xr ruptime 1
406if
407.Va rwhod_enable
408is set to
409.Dq YES
410in
411.Pa /etc/rc.conf ) .
412.It Va daily_status_mailq_enable
413.Pq Vt bool
414Set to
415.Dq YES
416if you want to run
417.Xr mailq 1 .
418.It Va daily_status_mailq_shorten
419.Pq Vt bool
420Set to
421.Dq YES
422if you want to shorten the
423.Nm mailq
424output when
425.Va daily_status_mailq_enable
426is set to
427.Dq YES .
428.It Va daily_status_include_submit_mailq
429.Pq Vt bool
430Set to
431.Dq YES
432if you also want to run
433.Xr mailq 1
434on the submit mail queue when
435.Va daily_status_mailq_enable
436is set to
437.Dq YES .
438This may not work with MTAs other than
439.Xr sendmail 8 .
440.It Va daily_status_security_enable
441.Pq Vt bool
442Set to
443.Dq YES
444if you want to run the security check.
445The security check is another set of
446.Xr periodic 8
447scripts.
448The system defaults are in
449.Pa /etc/periodic/security .
450Local scripts should be placed in
451.Pa /usr/local/etc/periodic/security .
452See the
453.Xr periodic 8
454manual page for more information.
455.It Va daily_status_security_inline
456.Pq Vt bool
457Set to
458.Dq YES
459if you want the security check output inline.
460The default is to either mail or log the output according to the value of
461.Va daily_status_security_output .
462.It Va daily_status_security_logdir
463.Pq Vt str
464The directory where the security scripts expect the system's log files.
465.It Va daily_status_security_output
466.Pq Vt str
467Where to send the output of the security check if
468.Va daily_status_security_inline
469is set to
470.Dq NO .
471This variable behaves in the same way as the
472.Va *_output
473variables above, namely it can be set either to one or more email addresses
474or to an absolute file name.
475.It Va daily_status_security_diff_flags
476.Pq Vt str
477Set to the arguments to pass to the
478.Xr diff 1
479utility when generating differences.
480The default is
481.Fl u .
482.It Va daily_status_security_chksetuid_enable
483.Pq Vt bool
484Set to
485.Dq YES
486to compare the modes and modification times of setuid executables with
487the previous day's values.
488.It Va daily_status_security_chkmounts_enable
489.Pq Vt bool
490Set to
491.Dq YES
492to check for changes in mounted filesystems to the previous day's values.
493.It Va daily_status_security_chkmounts_ignore
494Set to the list of filesystem types that should not be checked when
495.Va daily_status_security_chkmounts_enable
496is set to
497.Dq YES .
498.It Va daily_status_security_nomfs
499.Pq Vt bool
500Set to
501.Dq YES
502if you want to ignore
503.Xr mfs 8
504mounts when comparing against yesterdays filesystem mounts in the
505.Va daily_status_security_chkmounts_enable
506check.
507.It Va daily_status_security_chkuid0_enable
508.Pq Vt bool
509Set to
510.Dq YES
511to check
512.Pa /etc/master.passwd
513for accounts with uid 0.
514.It Va daily_status_security_passwdless_enable
515.Pq Vt bool
516Set to
517.Dq YES
518to check
519.Pa /etc/master.passwd
520for accounts with empty passwords.
521.It Va daily_status_security_logincheck_enable
522.Pq Vt bool
523Set to
524.Dq Li YES
525to check
526.Pa /etc/login.conf
527ownership, see
528.Xr login.conf 5
529for more information.
530.It Va daily_status_security_ipfwdenied_enable
531.Pq Vt bool
532Set to
533.Dq YES
534to show log entries for packets denied by
535.Xr ipfw 8
536since yesterday's check.
537.It Va daily_status_security_pfdenied_enable
538.Pq Vt bool
539Set to
540.Dq YES
541to show log entries for packets denied by
542.Xr pf 4
543since yesterday's check.
544.It Va daily_status_security_ipfwlimit_enable
545.Pq Vt bool
546Set to
547.Dq YES
548to display
549.Xr ipfw 8
550rules that have reached their verbosity limit.
551.It Va daily_status_security_ip6fwdenied_enable
552.Pq Vt bool
553Set to
554.Dq YES
555to show log entries for packets denied by
556.Xr ip6fw 8
557since yesterday's check.
558.It Va daily_status_security_ip6fwlimit_enable
559.Pq Vt bool
560Set to
561.Dq YES
562to display
563.Xr ip6fw 8
564rules that have reached their verbosity limit.
565.It Va daily_status_security_kernelmsg_enable
566.Pq Vt bool
567Set to
568.Dq YES
569to show new
570.Xr dmesg 8
571entries since yesterday's check.
572.It Va daily_status_security_loginfail_enable
573.Pq Vt bool
574Set to
575.Dq YES
576to display failed logins from
577.Pa /var/log/messages
578in the previous day.
579.It Va daily_status_security_tcpwrap_enable
580.Pq Vt bool
581Set to
582.Dq YES
583to display connections denied by tcpwrappers (see
584.Xr hosts_access 5 )
585from
586.Pa /var/log/messages
587during the previous day.
588.It Va daily_status_mail_rejects_enable
589.Pq Vt bool
590Set to
591.Dq YES
592if you want to summarise mail rejections logged to
593.Pa /var/log/maillog
594for the previous day.
595.It Va daily_status_mail_rejects_logs
596.Pq Vt num
597Set to the number of maillog files that should be checked
598for yesterday's mail rejects.
599.It Va daily_status_named_enable
600.Pq Vt bool
601Set to
602.Dq YES
603if you want to summarise denied zone transfers (AXFR and IXFR)
604for the previous day.
605.It Va daily_status_named_usedns
606.Pq Vt bool
607Set to
608.Dq YES
609if you want to enable reverse DNS lookups.
610.It Va daily_queuerun_enable
611.Pq Vt bool
612Set to
613.Dq YES
614if you want to manually run the mail queue at least once a day.
615.It Va daily_submit_queuerun
616.Pq Vt bool
617Set to
618.Dq YES
619if you also want to manually run the submit mail queue at least once a day
620when
621.Va daily_queuerun_enable
622is set to
623.Dq YES .
624.It Va daily_local
625.Pq Vt str
626Set to a list of extra scripts that should be run after all other
627daily scripts.
628All scripts must be absolute path names.
629.El
630.Pp
631The following variables are used by the standard scripts that reside in
632.Pa /etc/periodic/weekly :
633.Bl -tag -offset 4n -width 2n
634.It Va weekly_clean_kvmdb_enable
635.Pq Vt bool
636Set to
637.Dq YES
638if you want to purge old
639.Pa /var/db/kvm_*.db
640files.
641The kvm file for the current kernel will not be purged.
642.It Va weekly_clean_kvmdb_days
643.Pq Vt num
644Set to the number of days that the file must not have been accessed
645before being deleted.
646.It Va weekly_clean_kvmdb_verbose
647.Pq Vt bool
648Set to
649.Dq YES
650if you want the removed files to be reported in your weekly output.
651.It Va weekly_locate_enable
652.Pq Vt bool
653Set to
654.Dq YES
655if you want to run
656.Pa /usr/libexec/locate.updatedb .
657This script is run using
658.Ic nice -5
659as user
660.An nobody ,
661and generates the table used by the
662.Xr locate 1
663command.
664.It Va weekly_whatis_enable
665.Pq Vt bool
666Set to
667.Dq YES
668if you want to run
669.Pa /usr/libexec/makewhatis.local .
670This script regenerates the database used by the
671.Xr apropos 1
672command.
673.It Va weekly_catman_enable
674.Pq Vt bool
675Set to
676.Dq YES
677if you want to run
678.Pa /usr/libexec/catman.local .
679This script processes all out of date man pages, speeding up the
680.Xr man 1
681command at the expense of disk space.
682.It Va weekly_noid_enable
683.Pq Vt bool
684Set to
685.Dq YES
686if you want to locate orphaned files on the system.
687An orphaned file is one with an invalid owner or group.
688.It Va weekly_noid_dirs
689.Pq Vt str
690A list of directories under which orphaned files are searched for.
691This would usually be set to
692.Pa / .
693.It Va weekly_local
694.Pq Vt str
695Set to a list of extra scripts that should be run after all other
696weekly scripts.
697All scripts must be absolute path names.
698.El
699.Pp
700The following variables are used by the standard scripts that reside in
701.Pa /etc/periodic/monthly :
702.Bl -tag -offset 4n -width 2n
703.It Va monthly_accounting_enable
704.Pq Vt bool
705Set to
706.Dq YES
707if you want to do login accounting using the
708.Xr ac 8
709command.
710.It Va monthly_statistics_enable
711.Pq Vt bool
712Set to
713.Dq YES
714if you want to report non-identifying information about the OS to the
715.Pa http://www.bsdstats.org
716community site on the internet.
717.It Va monthly_statistics_report_devices
718.Pq Vt bool
719When
720.Va monthly_statistics_report_devices
721is set, this may also be set to report additional device statistics.
722.It Va monthly_local
723.Pq Vt str
724Set to a list of extra scripts that should be run after all other
725monthly scripts.
726All scripts must be absolute path names.
727.El
728.Sh FILES
729.Bl -tag -width /etc/defaults/periodic.conf
730.It Pa /etc/defaults/periodic.conf
731The default configuration file.
732This file contains all default variables and values.
733.It Pa /etc/periodic.conf
734The usual system specific variable override file.
735.It Pa /etc/periodic.conf.local
736An additional override file, useful when
737.Pa /etc/periodic.conf
738is shared or distributed.
739.El
740.Sh SEE ALSO
741.Xr apropos 1 ,
742.Xr calendar 1 ,
743.Xr df 1 ,
744.Xr diff 1 ,
745.Xr gzip 1 ,
746.Xr locate 1 ,
747.Xr man 1 ,
748.Xr msgs 1 ,
749.Xr netstat 1 ,
750.Xr nice 1 ,
751.Xr HAMMER 5 ,
752.Xr rc.conf 5 ,
753.Xr ac 8 ,
754.Xr chkgrp 8 ,
755.Xr dump 8 ,
756.Xr hammer 8 ,
757.Xr hammer2 8 ,
758.Xr mfs 8 ,
759.Xr newsyslog 8 ,
760.Xr periodic 8 ,
761.Xr sendmail 8
762.Sh HISTORY
763The
764.Nm
765file appeared in
766.Fx 4.1 .
767.Sh AUTHORS
768.An Brian Somers Aq Mt brian@Awfulhak.org .
769