Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all
名前
rwhod — システムステータスサーバ
書式
rwhod [-bpa] [-u user]
説明
rwhod は、 rwho(1) と ruptime(1) プログラムで使用されるデータベースを管理するサーバである。 このサーバの運用は、ネットワーク上で ブロードキャスト メッセージが使用できることを前提として いる。 rwhod は、ステータス情報の作成側としても、利用側としても動作する。 情報の作成側としては、シ ステム状態を定期的に問い合わせ、 ネットワークにブロードキャストされるステータスメッセージを 作成する。 情報の利用側としては、他の rwhod サーバのステータスメッセージを受け取り、確認した 後、 /var/spool/rwho ディレクトリに作られたファイルに記録する。 サーバは、``rwho'' サービスの指定で指示されているポートを使って メッセージの送受信を行う。 services(5) を参照すること。 -b フラグが指定された場合、 イーサネットのようなブロードキャストインターフェースのみが使われ る。 -p フラグが指定された場合、 point-to-point のインターフェースのみが使われる。 -a フラグ が指定された場合、またはフラグが何も指定されない場合、 全てのインターフェースが使われる。 -u フラグが指定された場合、 rwhod は root ではなく指定されたユーザーとして実行される。 送受信されるメッセージは以下の形式である。 struct outmp { char out_line[8]; /* tty の名前 */ char out_name[8]; /* ユーザー ID */ long out_time; /* 時間 */ }; struct whod { char wd_vers; char wd_type; char wd_fill[2]; int wd_sendtime; int wd_recvtime; char wd_hostname[32]; int wd_loadav[3]; int wd_boottime; struct whoent { struct outmp we_utmp; int we_idle; } wd_we[1024 / sizeof (struct whoent)]; }; 全てのフィールドは、送信の前にネットワークバイトオーダーに変換される。 平均負荷は w(1) プロ グラムによって計算され、 サーバが送信する前の 5, 10, 15 分間隔の平均負荷を表す。 平均負荷は 100 を掛けて整数で表される。 使用されるホスト名は、 gethostname(2) システムコールによって返 されたもので、ドメイン名は省略される。 メッセージの最後の配列には、メッセージを送信したマシ ンにログインしている ユーザーの情報が含まれている。 この情報には、アイドルでない端末ラインの utmp(5) エントリと端末ラインから最後に文字が受信されてからの秒数が入っている。 rwho サーバに受信されるメッセージは、 rwho サーバのポートから送信されたものでなければ、破棄 される。 さらに、メッセージ中で指定されたホスト名が表示できない ASCII 文字を含んでいる場合 も、メッセージは破棄される。 rwhod に受信された有効なメッセージは、ディレクトリ /var/spool/rwho にある whod.hostname というファイルに入れられる。 これらのファイルには、 最 新のメッセージのみが上で説明したフォーマットで格納されている。 ステータスメッセージは、約 3 分に 1 回作成される。 rwhod はシステムのブート時刻を 30 分毎に 再計算する。 なぜなら、(Linux 以外の) システムの中には、 ブート時刻の計算が完全に信用のおけ るプロセスではない システムも存在するためである。
関連項目
rwho(1), ruptime(1)
バグ
ネットワーク間でステータス情報を中継する方法が必要である。 サーバが死んでいる場合やネット ワーク通信が失敗している場合に、 マシンがダウンしていると解釈してしまうことがある。
履歴
rwhod コマンドは 4.2BSD で登場した。