AIXでcrontabの設定ファイルを直接設定した時に設定どおり動かなかった時のお話。

状況を整理すると、FFFTPにてcrontabの設定ファイルをダウンロード、設定ファイルに設定を追加して再度FFFTPでアップロード。こうした場合に設定した内容で実行がされなかった。

この時点でcrontab -lコマンドで設定ファイルの内容を確認するとしっかりと設定した内容が表示されます。ファイルの読み取り権限も問題ありませんでした。

なぜ設定通り実行されないのか原因を調べてみると、AIXでは/var/spool/cron/crontabs/[username]の情報は起動時に読み込まれるとのこと。

また、crontabコマンドで編集したときにもcronデーモンに変更が通知される。なので、AIXでcrontabの設定ファイルを直接編集した場合には、cronの再起動かcrontabの実行が必要になるらしい。

実際にcrontabの設定ファイルを直接編集したあとに、crontab -eコマンドで設定ファイルの編集モードにし、:qコマンドで終了するだけで設定した内容が実行されるようになりました。