PERIODIC.CONF(5)

名称
periodic.conf - 定期実行ジョブの設定情報

解説
periodic.conf ファイルには、日次/週次/月次のシステムメンテナンスジョブを どのように実行するかが記述されています。 このファイルは /etc/defaults にあり、 /etc の下にある同名のファイルは部分的に優先されます。 そしてさらに /etc/periodic.conf.local が優先されます。

periodic.conf は実際にはそれぞれの定期実行スクリプトからシェルスクリプトとして 取り込まれ、単にデフォルトの設定変数を提供することを意図しています。

以下の変数は periodic(8) 自身によって使用されます:

local_periodic
    (文字列) 定期実行スクリプトを検索するディレクトリのリスト。 このリストは periodic(8) の引数が絶対パスのディレクトリ名でなかった場合にのみ使用され、常に /etc/periodic が前置きされます。

dir_output
    (パス または リスト) dir ディレクトリから起動されるスクリプトの出力をどうするか記述します。 この変数に絶対パスが指定された場合、出力はそのファイルに行われます。 絶対パスではなかった場合は、一つ以上のスペースで区切られた 複数のメールアドレスと解釈され、それらのユーザにメールで送られます。 この変数が設定されてない場合や変数が空であった場合は、 標準出力に出力されます。

    それほど気にかけていないマシンでは daily_output, weekly_output, monthly_output はそれぞれ “/var/log/daily.log”, “/var/log/weekly.log”, “/var/log/monthly.log” にしておくといいでしょう。すると newsyslog(8) が、(もしファイルがあれば) これらのファイルを適切な時に切替えます。

dir_show_success

dir_show_info

dir_show_badconfig
    (ブール値) これらの変数は 起動されたスクリプトの戻り値に従って、 periodic(8) が出力を抑制するかどうかを制御します (ここで dir はそれぞれのスクリプトが置かれてるディレクトリ名です)。 もしスクリプトの戻り値が ‘0’ で、 dir_show_success が “NO” に設定されていた場合、 periodic(8) はスクリプトの出力を抑制します。 もしスクリプトの戻り値が ‘1’ で、 dir_show_info が “NO” に設定されていた場合、 periodic(8) はスクリプトの出力を抑制します。 もしスクリプトの戻り値が ‘2’ で、 dir_show_badconfig が “NO” に設定されていた場合、 periodic(8) はスクリプトの出力を抑制します。 もしこれらの変数が “YES” にも “NO” にも設定されていなかった場合は、それぞれのデフォルト値は “YES”, “YES” そして “NO” です。

    スクリプトの戻り値がどのように解釈されるかは periodic(8) のマニュアルページを参照して下さい。

以下の変数は /etc/periodic/daily にある標準のスクリプトによって使用されます:

daily_clean_disks_enable
    (ブール値) daily_clean_disks_files にマッチしたファイルを毎日削除したい場合 “YES” にします。

daily_clean_disks_files
    (文字列) マッチさせるファイル名のリストを設定します。 ワイルドカードも使用できます。

daily_clean_disks_days
    (整数) daily_clean_disks_enable が “YES” の場合、何日間ファイルにアクセスや修正がなかったら 削除するかをこの変数に設定する必要もあります。

daily_clean_disks_verbose
    (ブール値) 削除したファイル名を日次の出力で報告させたい場合 “YES” に設定します。

daily_clean_tmps_enable
    (ブール値) 毎日一時ディレクトリをきれいにしたい場合 “YES” に設定します。

daily_clean_tmps_dirs
    (文字列) daily_clean_tmps_enable が “YES” に設定されていた場合にきれいにするディレクトリ名のリストを指定します。

daily_clean_tmps_days
    (整数) daily_clean_tmps_enable が設定されていた場合、何日間ファイルにアクセスや修正がなかったら 削除するかをこの変数に設定する必要もあります。

daily_clean_tmps_ignore
    (文字列) daily_clean_tmps_enable が “YES” に設定されていた場合に削除させたくないファイルのリストを設定します。 ワイルドカードも使用可能です。

daily_clean_tmps_verbose
    (ブール値) 削除したファイル名を日次の出力で報告させたい場合 “YES” に設定します。

daily_clean_preserve_enable
    (ブール値) /var/preserve から古いファイルを削除したい場合 “YES” に設定します。

daily_clean_preserve_days
    (整数) 何日間ファイルに修正がなかったら削除するかを この変数に設定します。

daily_clean_preserve_verbose
    (ブール値) 削除したファイル名を日次の出力で報告させたい場合 “YES” に設定します。

daily_clean_msgs_enable
    (ブール値) 古いシステムメッセージを削除する場合 “YES” に設定します。

daily_clean_msgs_days
    (整数) 何日間ファイルに修正がなかったら削除するかを設定します。 この変数が空白だった場合、 msgs(1) のデフォルト値が使われます。

daily_clean_rwho_enable
    (ブール値) /var/who の下の古いファイルを削除したい場合 “YES” に設定します。

daily_clean_rwho_days
    (整数) 何日間ファイルに修正がなかったら削除するかを設定します。

daily_clean_rwho_verbose
    (ブール値) 削除したファイル名を日次の出力で報告させたい場合 “YES” に設定します。

daily_clean_hoststat_enable
    (ブール値) /var/spool/.hoststat sendmail -bH を実行して、 sendmail(8) のホスト状態キャッシュから古いエントリを削除したい場合、 “YES” に設定します。 削除ファイルの判断基準は、 sendmail(8) がキャッシュ情報を信じるかどうかに通常使用する判断基準と同じであり、 /etc/mail/sendmail.cf で設定されます。

daily_clean_hoststat_days
    (整数) 何日間ファイルに修正がなかったら削除するかを設定します。

daily_clean_hoststat_verbose
    (ブール値) 削除したファイル名を日次の出力で報告させたい場合 “YES” に設定します。

daily_backup_passwd_enable
    (ブール値) /etc/master.passwd ファイルと /etc/group ファイルのバックアップをとりリポートを出力させたい場合 “YES” に設定します。 リポートは、両ファイルに対する修正点と group ファイルに chkgrp(8) をかけた結果を出力します。

daily_backup_aliases_enable
    (ブール値) /etc/mail/aliases ファイルのバックアップをとり修正点を日次の出力で報告させたい場合 “YES” に設定します。

daily_backup_distfile_enable
    (ブール値) /etc/Distfile ファイルのバックアップをとり修正点を日次の出力で報告させたい場合 “YES” に設定します。

daily_calendar_enable
    (ブール値) 毎日 calendar -a を行いたい場合 “YES” に設定します。

daily_accounting_enable
    (ブール値) 毎日アカウンティングファイルを 切り替えたい場合 “YES” にします。 rc.conf(5) の中の accounting_enable が有効になっていない場合は切り替える必要はありません。

daily_accounting_compress
    (ブール値) 日々のアカウンティングファイルを gzip(1) を使用して圧縮したい場合 “YES” に設定します。

daily_accounting_save
    (数値) daily_accounting_enable が設定されている場合、 保存すべき日々のアカウンティングファイル数を指定します。 デフォルトは “3” です。

daily_accounting_flags
    (文字列) daily_accounting_enable が “YES” に設定されていた場合に ( -s に加えて) sa(8) ユーティリティに渡すフラグを指定します。 デフォルトは -q です。

daily_distfile_enable
    (ブール値) 毎日 rdist(1) を実行したい場合 “YES” に設定します。その場合 /etc/Distfile も存在していなければなりません。

daily_news_expire_enable
    (ブール値) /etc/news.expire を実行したい場合 “YES” に設定します。

daily_status_disks_enable
    (ブール値) ( daily_status_disks_df_flags を引数に指定して) df(1) を実行し、また dump -W を実行したい場合 “YES” に設定します。

daily_status_disks_df_flags
    (文字列) daily_status_disks_enable が “YES” の場合、 df(1) ユーティリティに渡す引数を設定します。

daily_status_network_enable
    (ブール値) netstat -i を実行したい場合 “YES” に設定します。

daily_status_network_usedns
    (ブール値) netstat(1) を実行する時、(DNS を参照するための) -n オプションをつけずに実行したい場合 “YES” に設定します。

daily_status_rwho_enable
    (ブール値) uptime(1) を実行したい場合 (もしくは /etc/rc.conf の中で rwhod_enable を “YES” に設定していて ruptime(1) を実行したい場合) “YES” に設定します。

daily_status_mailq_enable
    (ブール値) mailq(1) を実行したい場合 “YES” に設定します。

daily_status_mailq_shorten
    (ブール値) daily_status_mailq_enable を “YES” に設定していて mailq(1) の出力を短くしたい場合 “YES” に設定します。

daily_status_include_submit_mailq
    (ブール値) daily_status_mailq_enable を “YES” に設定した場合で、提出用メールキューに対しても mailq(1) を実行したい場合、 “YES” に設定します。 sendmail(8) 以外の MTA ではこれは動作しないかもしれません。

daily_status_security_enable
    (ブール値) セキュリティチェック を実行したい場合 “YES” に設定します。 セキュリティチェックは、別の periodic(8) スクリプト集合です。 システムデフォルトは /etc/periodic/security にあります。 ローカルスクリプトは /usr/local/etc/periodic/security に置きます。 更なる情報は、 periodic(8) マニュアルページを参照してください。

daily_status_security_inline
    (ブール値) セキュリティチェック出力をその場に含めたい場合 “YES” に設定します。 デフォルトでは、 daily_status_security_output の値に従い、出力をメールするかログします。

daily_status_security_output
    (文字列) daily_status_security_inline が “NO” である場合の、 セキュリティチェック の送信先です。 この変数は、前述の *_output 変数と同様に振舞います。 すなわち、1 個以上の email アドレスか、1 個の絶対パス指定のファイル名です。

daily_status_security_chksetuid_enable
    (ブール値) setuid 実行形式のモードと修正時刻を前日の値と比較したい場合、 “YES” に設定します。

daily_status_security_chkmounts_enable
    (ブール値) マウントされたファイルシステムが前日と違うかどうかを比較したい場合、 “YES” に設定します。

daily_status_security_noamd
    (ブール値) daily_status_security_chkmounts_enable チェックにおいて、 前日のファイルシステムのマウント状況と比較する時に amd(8) によるマウントを無視したい場合 “YES” に設定します。

daily_status_security_chkuid0_enable
    (ブール値) /etc/master.passwd を UID 0 に関して調査したい場合 “YES” に設定します。

daily_status_security_passwdless_enable
    (ブール値) /etc/master.passwd の空のパスワードのアカウントを調査したい場合 “YES” に設定します。

daily_status_security_ipfwdenied_enable
    (ブール値) 前日のチェック以来の ipfw(8) が拒否したパケットのログエントリを表示する場合、 “YES” に設定します。

daily_status_security_ipfdenied_enable
    (ブール値) 前日のチェック以来の ipf(8) が拒否したパケットのログエントリを表示する場合、 “YES” に設定します。

daily_status_security_ipfwlimit_enable
    (ブール値) 冗長限界に到達した ipfw(8) ルールを表示する場合、 “YES” に設定します。

daily_status_security_ip6fwdenied_enable
    (ブール値) 前日のチェック以来の ip6fw(8) が拒否したパケットのログエントリを表示する場合、 “YES” に設定します。

daily_status_security_ip6fwlimit_enable
    (ブール値) 冗長限界に到達した ip6fw(8) ルールを表示する場合、 “YES” に設定します。

daily_status_security_kernelmsg_enable
    (ブール値) 前日のチェック以来の新規 dmesg(8) エントリを表示する場合、 “YES” に設定します。

daily_status_security_loginfail_enable
    (ブール値) /var/log/messages 中の前日のログイン失敗を表示する場合、 “YES” に設定します。

daily_status_security_tcpwrap_enable
    (ブール値) /var/log/messages 中の前日の tcpwrappers ( hosts_access(5) 参照) が拒否した接続を表示する場合、 “YES” に設定します。

daily_status_mail_rejects_enable
    (ブール値) /var/log/maillog に記録された 前日分のメール拒否を要約したい場合 “YES” に設定します。

daily_status_named_enable
    (ブール値) 前日分の拒否されたゾーン転送 (AXFR と IXFR) を要約したい場合 “YES” に設定します。

daily_status_named_usedns
    (ブール値) DNS の逆引き検索を有効にしたい場合 “YES” に設定します。

daily_status_mail_rejects_logs
    (整数) 前日分のメール拒否をチェックするべき maillog ファイルの数を設定します。

daily_queuerun_enable
    (ブール値) 最低 1 日に 1 度はメールキューを手動で実行させたい場合、 “YES” に設定します。

daily_submit_queuerun
    (ブール値) daily_queuerun_enable を “YES” に設定した場合で、提出用メールキューに対しても最低 1 日に 1 度は 手動で実行したい場合、 “YES” に設定します。

daily_local
    (文字列) 他のすべての日次スクリプトの後に実行する 追加スクリプトのリストを設定します。 すべてのスクリプトは絶対パスで指定されなければなりません。

以下の変数は /etc/periodic/weekly にある標準のスクリプトによって使用されます:

weekly_clean_kvmdb_enable
    (ブール値) 古い /var/db/kvm_*.db ファイルを削除したい場合 “YES” に設定します。 現在のカーネルが使っている kvm ファイルは削除されません。

weekly_clean_kvmdb_days
    (整数) 何日間ファイルにアクセスがなかったら 削除するかをこの変数に設定する必要があります。

weekly_clean_kvmdb_verbose
    (ブール値) 削除したファイル名を週次の出力で報告させたい場合 “YES” に設定します。

weekly_locate_enable
    (ブール値) /usr/libexec/locate.updatedb を実行したい場合 “YES” に設定します。このスクリプトは nobody ユーザとして nice -5 を使用して実行され、 locate(1) コマンドによって使われるテーブルを生成します。

weekly_whatis_enable
    (ブール値) /usr/libexec/makewhatis.local を実行したい場合 “YES” に設定します。このスクリプトは apropos(1) コマンドによって使われるデータベースを再生成します。

weekly_catman_enable
    (ブール値) /usr/libexec/catman.local を実行したい場合 “YES” に設定します。 このスクリプトはすべての古くなったマニュアルページを処理して、 ディスク容量を消費する代わりに man(1) コマンドを速くします。

weekly_noid_enable
    (ブール値) システム上でみなしごになったファイルを 探したい場合 “YES” に設定します。 みなしごになったファイルとは、 無効なユーザやグループのものとなっているファイルです。

weekly_noid_dirs
    (文字列) みなしごになったファイルを探したいディレクトリのリストを 指定します。これは通常 / に設定されます。

weekly_status_pkg_enable
    (ブール値) インストールされているパッケージの中で 古くなったものを pkg_version(1) を使用して一覧にしたい場合 “YES” に設定します。

pkg_version
    (文字列) weekly_status_pkg_enable が “YES” に設定されていた場合、 時代遅れとなった packages を判定するためのプログラムをこの変数が指定します。 未設定の場合、 pkg_version(1) プログラムが使用されます。 例えば、portupgrade port がインストールされている場合、この変数に “portversion” を設定可能です。

pkg_version_index
    (文字列) pkg_version(1) に使用させる /usr/ports の INDEX ファイルを、この変数が指定します。 FreeBSD のバージョンにより依存関係の木構造が本質的に異なりますので /usr/ports の中には 2 つ以上の INDEX ファイルが存在する可能性があります。

    注意すべきこととして、変数 pkg_version に値 “portversion” が設定されている場合にも、 環境変数を用いて正しい INDEX ファイルを指定する必要があります。また、 /etc/periodic.conf の中で、 pkg_version_index をクリアしておく (“pkg_version_index=”) 必要があります。

weekly_local
    (文字列) 他のすべての週次スクリプトの後に実行する 追加スクリプトのリストを設定します。 すべてのスクリプトは絶対パスで指定されなければなりません。

以下の変数は /etc/periodic/monthly にある標準のスクリプトによって使用されます:

monthly_accounting_enable
    (ブール値) ac(8) コマンドによってログインのアカウンティング処理を行いたい場合 “YES” に設定します。

monthly_local
    (文字列) 他のすべての月次スクリプトの後に実行する 追加スクリプトのリストを設定します。 すべてのスクリプトは絶対パスで指定されなければなりません。

関連ファイル

/etc/defaults/periodic.conf
    デフォルト設定ファイルです。 このファイルはすべてのデフォルトの変数と設定値が記述されています。

/etc/periodic.conf
    通常、システム特有の変数を優先させるためのファイルです。

/etc/periodic.conf.local
    さらに追加して優先させるためのファイルで、 /etc/periodic.conf を共有していたり、配布していたりする場合に役立ちます。

関連項目
apropos(1), calendar(1), df(1), gzip(1), locate(1), man(1), msgs(1), netstat(1), nice(1), pkg_version(1), rdist(1), rc.conf(5), ac(8), chkgrp(8), dump(8), newsyslog(8), periodic(8), sendmail(8)

歴史
periodic.conf ファイルは FreeBSD 4.1 で登場しました。

作者
Brian Somers <brian@Awfulhak.org>