- ベストアンサー
ウェブサーバでのpsコマンド実行結果について
- ウェブサーバで定期的に実行されるpsコマンドの結果には、crondというデーモンが100個程度含まれることがあります。
- 実際に100個のcronを設定しているわけではないため、ウェブサーバをリブートするとcrondは消えますが、時間が経つと徐々に増えてきます。
- サーバ側がcronの数が多すぎてプロセスの終了を上手く捕まえられずに残っていることがありますが、当該プロセスの子プロセスはありませんでした。また、プロセス数が膨大になり、ウェブサーバのダウンを招く可能性もあります。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>このプロセス数が膨大になりダウンを招いていたりするものなんでしょうか。 これはあり得ますね。 >また、ウェブサーバをリブートすると消えますが、少しすると徐々にcrondが増えてきます。 何かが定期的に新しいcrondを起動しているのでしょうから、地道に設定ファイルを見直すしかないと思います。親プロセスはわかりますか? >1分毎に複数のcronが起動します。 これは具体的にどういうことですか?1分ごとにcrondプロセスが増えていくということ?
その他の回答 (3)
- pakuti
- ベストアンサー率50% (317/631)
状況がいまひとつわかりませんが。。。。 cronで何かしらの処理(スクリプト?)をしていて それが悪さをしているようだ。 cronから呼び出した処理の何が悪さをしているのか知りたい って事ですか? その処理は具体的に何をしているのでしょうか? 切り分けとしてはスクリプト内でログを吐かせる方が早いかと思いますが。。。
- notnot
- ベストアンサー率47% (4900/10361)
#1です。 >親プロセスは分ります。 ああ、質問の仕方が悪かったですね。「親プロセスはわかりますか?わかるならそれは何ですか?」という意味です。何ですか? >1分毎にcronを起動するようにcrontabに記載しているという意味です。 具体的にお願いします。
- pakuti
- ベストアンサー率50% (317/631)
>その親プロセスの子プロセスが何を起動したかを分るのでしょうか。 pstree -a でどうでしょう?
補足
すみません、質問の仕方が悪かったです。 プロセス起動中であれば、子プロセスの確認は取れるのは存じております。 ゾンビとして親プロセスのみが残っている現状で、 処理をした子プロセス(既に処理が終了しているもの)を知ることができないのかなと思います。 ps auxfを実行した結果 root PID 0.0 0.0 5832 1320 ? D Jan04 0:00 \_ crond となりますが、こやつの子プロセスがなんだったかを知りたいです。 以上、宜しくお願い致します。
補足
>何かが定期的に新しいcrondを起動しているのでしょうから、地道に設定 >ファイルを見直すしかないと思います。親プロセスはわかりますか? 親プロセスは分ります。その親プロセスの子プロセスが何を起動したかを分るのでしょうか。 >これは具体的にどういうことですか?1分ごとにcrondプロセスが増えていくということ? 1分毎にcronを起動するようにcrontabに記載しているという意味です。 すみませんが、宜しくお願い致します。