重村法克です。

On 2025/06/25 06:35:37, Yoshito Takeuchi wrote:
竹内と申します。
毎日のシステムチェックなどをしてくれている
/etc/crontab
を編集したいのですが直接これを編集してよいのでしょうか?
/usr/local/etc/crontab とかあるのか調べたのですが分かりませんでした。

懸念としてはわかります。編集してもかまわないのですが、今回の状況を考えると
/etc/cron.d/ または /usr/local/etc/cron.d/ ディレクトリ以下に crontab ファ
イル(ファイル名は任意※)を置く運用をオススメします。ここまではシステムの
crontab 扱いです。

※先頭が . (ドット)で始まらないファイルが対象となる

crontab -e として実行すると実行ユーザーの crontab ファイルが作られます。こ
ちらは /var/cron/tabs/ 以下にそのユーザー名でファイルが作られます。
システムの crontab との違いは、実行ユーザー名カラムが無くなることになります。

独立した crontab ファイルの場合、環境変数の定義は各ファイル内で閉じるため、

LANG=ja_JP.UTF-8
LC_ALL=ja_JP.UTF-8
33 3 * * * root /usr/local/bin/certbot renew --max-log-backups 20

と書いてしまうのがシンプルで良いと思います。

なお crontab -e した場合にエラーになる場合は /var/cron/allow または /var/cron/deny
ファイルの存在を確認してください。当該ユーザーの登録が allow か deny のファ
イル中に含まれることがエラーの原因の場合があります。

もう一つ、既に出てるようにこれらファイルは1分に1回巡回チェックされます。
リロードは不要ですが、中途半端な状況で crontab ファイルを作るとエラーにな
りますので注意してください。
その辺り上手くいってるかどうかは /var/log/cron ログファイルを見て、下記の
ようなメッセージが出ていれば、設定ファイルの読み取りは一応できています。

(*system*) RELOAD (/usr/local/etc/cron.d/certbot)

その後、期待した時間に実行されてるかは引き続きログで確認してください。

以上よろしくお願いいたします。

--
Norikatsu Shigemura <n...@ninth-nine.com>

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to