RPC.STATD(8)

名称
rpc.statd - ホストステータス監視デーモン

書式
rpc.statd [-d]

解説
rpc.statd ユーティリティは、他のホスト上の rpc.statd デーモンと協調してステータスの監視 サービスを提供するデーモンです。 デーモンは、ローカルホスト上で動くプログラム (たとえば rpc.lockd(8) NFS ファイルロックデーモン) からのリクエストを受け取り、 指定したホストのステータスを監視します。 監視中のホストがクラッシュし再起動すると、リモートのデーモンは そのことをローカルデーモンに対し知らせ、さらにローカルデーモンが 監視サービスをリクエストしたローカルプログラムに対して知らせます。 逆に、もしこのホストがクラッシュし再起動すると、 rpc.statd は再起動時に、クラッシュ時に監視していた全てのホストに対して クラッシュが起こったことを知らせます。

オプションは以下のとおりです:

-d  syslog を通してデバッグ情報を書くようになります。 デーモンへの全ての RPC トランザクションが記録されます。 このメッセージは level が LOG_DEBUG で facility が LOG_DAEMON として 記録されます。 エラーの状態は、このオプションに関わらず、log level が LOG_ERR で facility が LOG_DAEMON として syslog を通して記録されます。

rpc.statd ユーティリティは inetd(8) から起動してはいけません。これは、プロトコルが、システムの開始時に デーモンが起動されていることを仮定しているためです。 デーモンは rc(8) によりネットワークの開始後に起動されるべきです。

関連ファイル
/var/db/statd.status
    現在監視しているホストの不揮発レコード
/usr/include/rpcsvc/sm_inter.x
    ローカルアプリケーションが監視リクエストを登録するために使う RPC プロトコルの仕様。

関連項目
syslog(3), rc(8), rpc.lockd(8)

バグ
監視中のホストが (致命的なハードウェア障害などのため) 永久に 見えなくなったことをデーモンが知る手段はありませんが、 ホストや中間のルータの一時的な障害は知ることは出来ます。 現在の実装では、リトライは 10 分間隔、つぎは 1 時間ごとに行い、最後に 24 時間 経つとあきらめます。

プロトコルでは、監視関係の確立に、 ローカルとリモートの両方のデーモンで対称に監視リクエストを行うことを 要求しています。 これは NFS のロックプロトコルの場合は便利ですが、 おそらく他のアプリケーション用の監視システムとしての 有用性が低下しています。

現在の実装では、各監視ホストにつき 1Kbytes の領域が ステータスファイル内 (VM 内にも) に確保されます。 このため、 多くのクライアントを抱える NFS サーバでは非効率的であるかもしれません。

標準
実装は、 X/Open CAE Specification C218, "Protocols for X/Open PC Interworking: XNFS, Issue 4", ISBN 1 872630 66 9 をもとにしています。