[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[linux-users:102131] pidofについて


初めまして、イナヨシと申します。
情報が少なく申し訳有りませんが、
以下の内容について知識を拝借したく、よろしくお願い致します。

質問の内容:
 「pidof」を使用した場合に、プロセスIDが取得できない場合があるのか?
 または、外部の要因で「pidof」を使用した場合に、プロセスID取得不可となる条件があるのか?

質問の背景:
・使用環境
  RedHat7.0J
  glibc-2.1.93-2
  SysVinit-2.78-10

・やろうとしていること
 上記の環境で、自前で稼動監視を行なう為に「pidof」を使用し、
 監視対象のプロセスが生存していることを確認する処理を10分毎に行っています。

 実行形式は次の通り(シェルです)。
 常駐プロセス(600秒スリープして、監視処理を呼び出す)
  ¥_監視プロセス(PID=$(/sbin/pidof crond) こんな感じ)

・問題点
 監視処理が監視対象のプロセスIDを取得できない場合があります。
 発生頻度は、一ヶ月に一回あるかないか程度。
 取得エラー時に、実際にマシンのプロセス一覧を参照すると該当するプロセスは存在し、
 syslog等にもエラーメッセージは出力されていない為、その瞬間本当にプロセスが存在していなかったとは考え難い。
 
 生憎、標準エラー出力のリダイレクトを行っていなかった為、エラーメッセージ等の情報は無い。
 リターンコードとしては、141が返されていた。
 (前回発生時のみ。ソースも参照してみたが、141を返す場所は無い。只のエラーメッセージのSIGPIPEだろうか・・。これ以前の情報は無し。)
 
 マニュアル等には、プロセスID取得不可となるような、既知のバグは記述されておらず、
 bugzzilaにも、該当するようなバグは見当たらない。
 
 以上、よろしくお願いします。

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
Follow-Ups: