cronがコマンドの処理を停止するのはなぜですか? [コピー]

cronがコマンドの処理を停止するのはなぜですか? [コピー]

私のSolaris 11クローンが動作を停止したようです。

これは私が実行したcronジョブの最終出力です。

-rw-r--r--   1 root     root          60 Jul  2 20:30 locked_passwords.txt

次のようにテストを設定しました。

* * * * * touch /tmp/testing.txt

絶対ファイルに触れないでください

サービスが実行中であることを確認しました。

svcs cron
STATE          STIME    FMRI
online         Mar_09   svc:/system/cron:default

ファイルをバンドルしましたが、次のようになります。

root   532     1   0   Mar 09 ?           3:08 /usr/sbin/cron
pfexec truss -f -p 532
532:    pollsys(0xFC7FC1A8, 1, 0xFC7FC750, 0x00030414) (sleeping...)

私のクローンプロセスは眠っていますか?なぜ?

アップデート:cronを2回再起動しましたが、停止し続けます。私のログのほとんどは次のとおりです。

! c queue max run limit reached Mon Jul 24 12:53:00 2017 
! rescheduling a cron job Mon Jul 24 12:53:00 2017 
! c queue max run limit reached Mon Jul 24 12:53:00 2017 
! rescheduling a cron job Mon Jul 24 12:53:00 2017 
! c queue max run limit reached Mon Jul 24 12:53:00 2017 
! rescheduling a cron job Mon Jul 24 12:53:00 2017 

この状態をどのように診断しますか?

答え1

/var/cron/logを確認しましたか?アカウントがロックされているか、cron.denyに追加されている可能性がありますか?
/var/spool/cron/crontabsに対応する.auファイルはありますか?歴史的に、このファイルはジョブを実行するために必要でした。によって生成されるため、crontab -e通常、cronファイルが新しいサーバーにコピーされたときにのみ失われます。呼び出されるスクリプト/バイナリに問題がある可能性がありますか?

cronデーモンは通常、作業を待っている間眠ります。

v11.3を使用している場合は、次のものも使用できます。予約サービスあなたのニーズにもっと役立つとしたらどうでしょうか?

答え2

解決しました! ! !

/var/cron/logは私の問題を解決しませんでしたが、正しい方向を教えてくれました。ログに見るとたくさん出ますね

! c キューの最大実行制限に達しました。 2010年5月27日木曜日 15:45:01 [[queue "c" for cron]]

/etc/cron.d/queuedefsは他のすべてのサーバーと同じであるため、問題はありません。

これが私がすることです。 ps -ef | grep cron ptree <PID> pgrep -f '/export/script.sh' # verify the listing before proceeding pkill -9 -f '/export/script.sh' ** Now cron is running again **

何百ものscript.shが積み重なっているのを見てください。

script.shがデータベースに接続され、このスクリプトによる変更の問題を解決しています。しかし、cronは再び実行されます。

ありがとう

関連情報