PERIODIC.CONF(5) File Formats Manual PERIODIC.CONF(5)

periodic.confperiodic job configuration information

The file periodic.conf contains a description of how daily, weekly and monthly system maintenance jobs should run. It resides in the /etc/defaults directory and parts may be overridden by a file of the same name in /etc, which itself may be overridden by the /etc/periodic.conf.local file.

The periodic.conf file is actually sourced as a shell script from each of the periodic scripts and is intended to simply provide default configuration variables.

The following variables are used by periodic(8) itself:

local_periodic
(str) List of directories to search for periodic scripts. This list is always prefixed with /etc/periodic, and is only used when an argument to periodic(8) is not an absolute directory name.
dir_output
(path or list) What to do with the output of the scripts executed from the directory dir. If this variable is set to an absolute path name, output is logged to that file, otherwise it is taken as one or more space separated email addresses and mailed to those users. If this variable is not set or is empty, output is sent to standard output.

For an unattended machine, suitable values for daily_output, weekly_output, and monthly_output might be “/var/log/daily.log”, “/var/log/weekly.log”, and “/var/log/monthly.log” respectively, as newsyslog(8) will rotate these files (if they exists) at the appropriate times.

dir_show_success
 
dir_show_info
 
dir_show_badconfig
(bool) These variables control whether periodic(8) will mask the output of the executed scripts based on their return code (where dir is the base directory name in which each script resides). If the return code of a script is ‘0’ and ⟨dir_show_success is set to “NO”, periodic(8) will mask the script's output. If the return code of a script is ‘1’ and ⟨dir_show_info is set to “NO”, periodic(8) will mask the script's output. If the return code of a script is ‘2’ and ⟨dir_show_badconfig is set to “NO”, periodic(8) will mask the script's output. If these variables are set to neither “YES” nor “NO”, they default to “YES”, “YES” and “NO” respectively.

Refer to the periodic(8) manual page for how script return codes are interpreted.

The following variables are used by the standard scripts that reside in /etc/periodic/daily:

daily_clean_tmps_enable
(bool) Set to “YES” if you want to clear temporary directories daily.
daily_clean_tmps_dirs
(str) Set to the list of directories to clear if daily_clean_tmps_enable is set to “YES”.
daily_clean_tmps_days
(num) When daily_clean_tmps_enable is set, this must also be set to the number of days old that a file's access and modification times must be before it is deleted.
daily_clean_tmps_ignore
(str) Set to the list of files that should not be deleted when daily_clean_tmps_enable is set to “YES”. Wild card characters are permitted.
daily_clean_tmps_verbose
(bool) Set to “YES” if you want the removed files to be reported in your daily output.
daily_local
(str) Set to a list of extra scripts that should be run after all other daily scripts. All scripts must be absolute path names.

The following variables are used by the standard scripts that reside in /etc/periodic/weekly:

weekly_local
(str) Set to a list of extra scripts that should be run after all other weekly scripts. All scripts must be absolute path names.

The following variables are used by the standard scripts that reside in /etc/periodic/monthly:

monthly_local
(str) Set to a list of extra scripts that should be run after all other monthly scripts. All scripts must be absolute path names.

/etc/defaults/periodic.conf
The default configuration file. This file contains all default variables and values.
/etc/periodic.conf
The usual system specific variable override file.
/etc/periodic.conf.local
An additional override file, useful when /etc/periodic.conf is shared or distributed.

newsyslog(8), periodic(8)

The periodic.conf file appeared in FreeBSD 4.1.

Brian Somers ⟨brian@Awfulhak.org⟩

May 12, 2007 macOS 14.5