cronを使って定期実行させようとしてうまくいかない場合に、"/var/log/cron.log" には実行ログしかのりません。
そのためコマンドの実行結果をファイルに出力させる方法として参考までに以下があります。
##①標準出力
標準出力だけを出す場合
/path/script.sh 1> /path/exec.log
##②エラー出力
エラー出力だけ出す場合
/path/script.sh 2> /path/error.log
##③標準出力とエラー出力その1
両出力を一つのファイルに出す場合
/path/script.sh > /path/both.log 2>&1
##④標準出力とエラー出力その2
それぞれの出力を別々のファイルに出す場合
/path/script.sh 1> /path/exec.log 2> /path/error.log
cron結果が上手くいったかどうかを確認するためにはエラーログを含めて出したほうが確実です。
今回はログ調査ということで、特に使い分ける必要もないため③で実行することにしました。
$ crontab -l
* * * * * sh -x /path/script.sh > /path/error.log 2>&1
結果として、以下のログが確認できました。
$ cat /path/error.log
:
sudo: sorry, you must have a tty to run sudo
:
上記については以下を参考に回避手段をとることでうまく動くようになりました。
http://tweeeety.hateblo.jp/entry/2015/03/03/111116