RWHOD(8C) — NEWS-OS Programmer’s Manual
名称
rwhod − システムステータスのサーバ
形式
/etc/rwhod
解説
rwhod は、 rwho(1C) と ruptime(1C) プログラムが使用する データベースを保守するサーバです。 この操作は、ネットワーク上のメッセージの 同報通信能力に基づいています。
rwhod は、ステータス情報を送信したり受信したりします。 情報を送信する時は、 定期的にシステムのステータスを調べ、 ネットワーク上に同報通信する ステータスメッセージを作成します。 情報を受信する時は、 他の rwhod サーバのステータスメッセージを受け、 その妥当性を検査し、それを /usr/spool/rwho ディレクトリにあるファイルに記録します。
サーバは、 rwho サービス仕様で示されているポートで、 メッセージの送信と受信を行います (service(5) を参照のこと)。 送受信されるメッセージは次の形式から成ります。
structoutmp {
charout_line[8];/∗ tty name ∗/
charout_name[8];/∗ user id ∗/
longout_time;/∗ time on ∗/
};
structwhod {
charwd_vers;
charwd_type;
charwd_fill[2];
intwd_sendtime;
intwd_recvtime;
charwd_hostname[32];
intwd_loadav[3];
intwd_boottime;
structwhoent {
structoutmp we_utmp;
intwe_idle;
} wd_we[1024 / sizeof (struct whoent)];
};
すべてのフィールドは送信に先駆けて、 ネットワークのバイトオーダに変換されます。 ロードアベレージは、 w(1) プログラムによって計算され、 サーバの送信に駆け、 5分、10分、15分間隔で ロードアベレージを求めます。 その際、値は 100倍されて整数で表示されます。 ホスト名は、 gethostname(2) というシステムコールが返す名前です。 ドメイン名は省略されます。 メッセージの最後にある配列には、 送信マシンにログされている ユーザについての情報が含まれています。 この情報には、遊んでいない各端末回線について、 utmp(5) エントリの内容、およびその端末回線で 最後に文字を受信してからの時間を秒単位で示す値が含まれています。
rwho サーバが受信したメッセージは、 それが rwho サーバのポートで来ていなければ捨てられます。 さらに、メッセージの中で指定されているホスト名に 任意の印字できないASCII文字を含む場合も、 そのメッセージは捨てられます。 rwhod が受信した有効なメッセージは、 /usr/spool/rwho ディレクトリの中の whod.hostname という名前のファイルに置かれます。 これらのファイルには、 最新メッセージだけが前述した形式で含まれます。
ステータスメッセージは、 約 3分に 1回生成されます。 rwhod は、 /vmunix 上で 30 分ごとに nlist(3) を実行し、 このファイルが現在操作中のシステムイメージになるよう監視しています。
関連事項
バグ
ネットワーク間のステータス情報に代わる方法が必要です。 ステータス情報は継続的にではなく、 要求時のみ送信されるべきです。 ときどき、サーバの異常やネットワーク通信の異常を マシンダウンと解釈することがあります。
NEWS-OSRelease 4.2.1R