SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 社員募集 ...

【linux】cronが実行されない

問題

cronに設定したコマンドがどうも実行されていないようなのですが、どんな問題が考えられますか。

答え

パスが通っていない可能性がある。

ログインシェルではパス(PATH)が設定されているために、コマンド名だけで実行できるが、cronが実行される環境は、ログインシェルとは違ってそうはいかない場合がある。

「command not found」などのエラーが出ているはずなので、エラーをどこかに出力させれば気づける。

例)

# うまくいかない
* * * * * tmpwatch -d 24 /log

# フルパスで書くと実行できる
* * * * * /usr/sbin/tmpwatch -d 24 /log
# エラーをファイルに出してみるなら
* * * * * tmpwatch -d 24 /log 2> /tmp/error.log

関連するメモ

コメント