cron のログを確認しましたが、おそらく以下の job のことだと思われますが cron job 自体は実行されています。
(本日分のみ抜粋)
Sep 28 00:45:01 sf-usr-shell /USR/SBIN/CRON[32730]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 01:45:01 sf-usr-shell /USR/SBIN/CRON[4127]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 02:45:01 sf-usr-shell /USR/SBIN/CRON[6819]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 03:45:01 sf-usr-shell /USR/SBIN/CRON[9184]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 04:45:01 sf-usr-shell /USR/SBIN/CRON[12102]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 05:45:01 sf-usr-shell /USR/SBIN/CRON[14914]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 06:45:01 sf-usr-shell /USR/SBIN/CRON[21844]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 07:45:01 sf-usr-shell /USR/SBIN/CRON[28580]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 08:45:01 sf-usr-shell /USR/SBIN/CRON[2954]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 09:45:01 sf-usr-shell /USR/SBIN/CRON[9769]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 10:45:02 sf-usr-shell /USR/SBIN/CRON[17028]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 11:45:01 sf-usr-shell /USR/SBIN/CRON[23221]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh) Sep 28 12:45:01 sf-usr-shell /USR/SBIN/CRON[30094]: (haradats) CMD (/home/users/h/ha/haradats/bin/updaterepos.sh)
システム的には異常はない状態ですので、実行しているスクリプトがなんらかエラーになっていないかご確認ください。
手動で実行したらエラーなく動作したとのことです。 もう少し様子を見てみることにします。
ありがとうございました。
手動で実行したらエラーなく動作したとのことです。
手動で実行したのは updaterepos.sh ではなくて svn update だったそうです。
updaterepos.sh 内に
svn -q update >&/dev/null
という行があり、つい先日までは正常に動いていたそうです。
しかし、手動で updaterepos.sh を実行してみたところ、 Syntax error: Bad fd number というエラーが出るようになっていたそうです。
今まで正常に動作していた >&/dev/null が突然 Syntax error: Bad fd number という エラーになった理由は不明ですが、 >&/dev/null を > /dev/null に修正することで 正常に動作するようになったとのことです。
ありがとうございました。
kumaneko への返信
手動で実行したらエラーなく動作したとのことです。
手動で実行したのは updaterepos.sh ではなくて svn update だったそうです。 updaterepos.sh 内に svn -q update >&/dev/null という行があり、つい先日までは正常に動いていたそうです。 しかし、手動で updaterepos.sh を実行してみたところ、 Syntax error: Bad fd number というエラーが出るようになっていたそうです。 今まで正常に動作していた >&/dev/null が突然 Syntax error: Bad fd number という エラーになった理由は不明ですが、 >&/dev/null を > /dev/null に修正することで 正常に動作するようになったとのことです。
OSのアップグレードのアナウンスにも書きましたが、/bin/sh が bash から dash に変更されています。
「>& のみ」の redirect は bash では syntax 的に許容されているようですが、厳密には posix sh の構文上は 許容されてない(定義されてないが正解かもしれません)ですので #!/bin/sh なスクリプトでは他の環境 (dash以外のposix sh互換環境)でもエラーになる可能性があります。
bash 拡張を利用したスクリプト(bashでの利用を想定したスクリプト)を利用する場合は、スクリプトの先頭は
と明示的にbashを指定してください。
お世話になっております。
shell.sourceforge.jp 上のユーザ haradats の crontab により 一時間に一度 svn update がかかるようになっている筈ですが、 昨日から一度も実行されていないように見えます。
お手数ですがご確認願えますでしょうか?