akairaidenの日記: 久々にCentos6のcrontab弄ったら見事にハマった・・・ 2
日記 by
akairaiden
手動で実行してエラーが出ない事を確認したので、
crontabにコマンド組み込んで一晩経ってから確認したら、実行エラー・・・
ということでチェックしてみたら、crontabで実行するとパスが、
/usr/binと/binにしか通ってなかったorz
Centos6をメンテするのは3年ぶり位なのですっかり忘れていた・・・
んで、原因調査とスクリプトの修正で小一時間くらいかかってしまった。
#service: command not foundなんてログが出てた時点で気づけ>自分
crontabから流すとき (スコア:1)
全てのコマンドとファイルを絶対パスで指定するようにしています。
#何度やらかしたことか
どこの時空の話かと思ったらCentOS6かよ (スコア:0)
そりゃそうだよな
CentOS7だったらsystemdだから、cron以前にフルパス常識だもんな
とっくの昔にこの問題を通過したArchLinuxなんて
ありとあらゆる実行ファイルを/usr/binに放り込んで、/binも/sbinも/usr/sbinも全て/usr/binへのsymlinkになってるわ
logrotateみたいに、昔は/usr/sbinに放り込んであったが、最近は/usr/binに入れとくのが普通みたいなことになっても無問題