環境はUbuntu18です。めちゃくちゃ初歩的だったらすいません。


ピリオドを含む名前のファイルを cron.d に置いたら動かなくて、最終的に記事タイトルのことに気づきました。

cron.d が動かなくてやったこと

動作確認のために毎分動くように cron.d を設定したのに、待てど暮らせど /var/log/syslog に出てこないので、いくつか確認しました。

cronが動いてるか確認

service cron status

普通に動いてた。

cron.dファイルの所有者とパーミッション確認

ll /etc/cron.d/

# 結果
-rw-r--r--  1 root root   99 Nov 27 22:16 periodo_haitteru.namae

正常に動いてた他の cron.d ファイルたちと同じだった。

ぐぐると、root以外に実行権限があったらNG (0600 しかダメ) と書いてるページがいくつか見つかったけど、Ubuntuの場合は違うっぽい。最終的に 0644 のままでも動いた。

cron再起動

sudo service cron restart

設定ファイルがリロードされてないのかと思って再起動したけど、やっぱり動かない……。

ファイル名変更

TeraTermで接続してたんだけど、ふと当該のファイルを vi で開いた時に、他の cron.d ファイルと違うシンタックスハイライトをされてることに気づく。

もしかしてcronのファイルだと認識されてない? と思ってファイル名からピリオドを除去してみると、ビンゴ。restartせずともすぐさま反映されて、毎分動きだした😭

以上です。

参考にさせていただいた記事