私たちには、同じハードウェアとソフトウェアを実行する約40台のコンピュータがあります。それらはすべてUbuntu 11.10を実行します。それらはすべてログインするユーザーアカウントが1つしかありません。.profileファイルはデーモンプロセスを起動するように設定されています。デーモンのコードはC言語で書かれています。SIGHUPが生成される原因は何ですか?
数週間後、デーモンがもう動作していないというレポートが表示されます。これはすべてのコンピュータではなく、1つまたは2つだけです。問題を一貫して再現することはできません。
コードを見ると、アプリケーションはSIGHUPまたはSIGTERMのいずれかを受信すると終了します。
私が理解するように、ユーザーがログオフするとSIGHUPが生成されます。私たちの場合、ユーザーは決してログオフしません。私はSIGHUPが他の何らかの理由で生成された可能性があるかどうか疑問に思っています。他の考えがあれば分かるはずです。
デーモンにログを記録して、2つの信号のいずれが原因であるかを確認しましたか? SIGHUPは、制御端末が閉じている場合に起動されるようですが、サーバービルドを使用していて1つの主な接続のみを使用している場合は、違いがあります。 –
信号を手動で送信することもできます。知るか? – arkascha