Ubuntu 11.04サーバーで実行しようとすると
service powernap stop
ルートユーザーのcronジョブとして、それは失敗し、syslogでこのメッセージを表示します
NAS CRON[10853]: (CRON) error (grandchild #10854 failed with exit status 2)
これはルートユーザーのメールアカウントにメールで送信されます
exec: 129: stop: not found
コマンドラインからpowernapサービスを開始および停止できるのに、なぜcronから機能しないのですか?
/sbin
がcronから起動したときに$PATH
にないようです。次のような行を追加します
PATH = /sbin:$PATH
crontabファイルに。
私はまさにこの問題を抱えていましたが、crontabの実行時には$PATH
変数が完全に空であるように見えるため、PATH=/usr/sbin;$PATH
をcrontabリストの先頭に置くだけでは不十分です。
だから、私がやったことは(このcrontabをrootとして実行しているので、squidプロキシをオフにすることができます):
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin
そして、うまくいったようです。
うーん... cronが「停止」を実行しようとしているのは奇妙です...
代わりにcronを実行してみてください:
sh -c '/usr/sbin/service powernap stop'