この章では,通信やファイル転送処理に必要なローカルおよびリモートのユーザまたはホストに関する情報を検索する方法について説明します。 この章で説明するコマンドを使用すると,次のことを行うことができます。
自身のネットワーク接続に関する情報の取得 (who am i
コマンド,10.1 節)
現在ローカル・システムにログインしているユーザ,およびそのユーザがログインした端末の確認 (who
コマンド,10.1 節)
別のユーザに関する追加情報 (たとえば,フル・ネーム,オフィスの所在地,電話番号,プロジェクト,計画など) の検索 (finger
コマンド,10.2.1 項)
talk
コマンドまたは
write
コマンド
で相手の端末にアクセスできるかどうかの判定 (finger
コマンド,10.2.1 項および10.2.2 項)
リモート・ホストの使用状況に関する情報の分析およびソート
(ruptime
コマンド,10.3 節)
現在リモート・ホストにログインしているユーザの確認 (rwho
コマンド,10.4 節)
リモート・ホストがオンラインであるかどうかの判定 (ping
コマンド,10.5 節)
注意
この章で説明するコマンドは,すべての TCP/IP オペレーションと同様に,ローカル・ホストおよびリモート・ホストのセキュリティ機能の影響を受けます。 この章や関連するリファレンス・ページの説明のとおりにコマンドが動作しない場合には,システム管理者に問い合わせてください。
ユーザ名とパスワードを入力してホスト・コンピュータにログインすると,ユーザには固有の ID が割り当てられます。
接続しているネットワークに関してこの情報を確認するには,who am i
という
who
コマンドを使用してください。
このコマンドを実行すると,次に示すユーザ情報が表示されます。
ログイン名
端末名 (回線)
ログインした時刻
ネットワークに接続しているコンピュータ名
次の例は,lennon
というユーザが,システム・プロンプト (%
) から
who am i
コマンドを入力して出力された結果です。
% who am i lennon ttyp0 Jul 15 14:17 (walrus)
この例は,ユーザ
lennon
が 7 月 15 日の午後 2 時 17 分に
walrus
というホストからログインしたことを表しています。
ttyp0
は使用した回線で,walrus
はネットワークに接続しているこの回線に対する名前です。
who am i
コマンドを使用すると,ワークステーションで実行しているセッションを追跡することができます。
セッションの中には,ユーザ自身による別のホストへのリモート・ログインや,一緒に作業をしている人によるリモート・ログインがあります。
who am i
コマンドについての詳細は,
who
(1)
同じローカル・ホストに別のユーザがログインしているかどうかを確認するには,who
コマンドを使用してください。
次の例では,lennon
がローカル・ホスト
london
のプロンプトに対して
who
コマンドを入力しています。
この例では,現在,他に 3 人のユーザが別々のノードから
london
にログインしていることが表示されています。
london% who -M lennon ttyp0 Jul 15 08:17 (walrus) elvis ttyp2 Jul 15 07:55 (velvet) burdon ttyp1 Jul 15 09:02 (animal) sarjan ttyp4 Jul 14 16:47 (pepper)
who
コマンドによる出力は,who am i
コマンドによる出力と同じフォーマットです。
10.2 ネットワーク・ユーザに関する情報の取得
finger
コマンドおよびそのオプションを使用すると,ローカル・ホストまたはリモート・ホストにアカウントを持つユーザの情報を表示することができます。
指定するホストは,fingerd
デーモン・サーバを実行しているか,またはfingerd
を起動するように構成された
inetd
デーモンがなければなりません。
finger
(1)finger
コマンドが動作しない場合は,システム管理者にお問い合わせください。
finger
コマンドの構文は,次のとおりです。
finger
[
[ option ...
] [ user ...
] [ user@host_name ...
] ]
オプションまたはユーザ名を指定しないで
finger
コマンドを実行すると,ログインしているローカル・ホスト上のすべてのユーザに関して,次の情報が表示されます。
ただし,これらの情報が表示されるのは,情報が
/etc/passwd
ファイルにあるユーザに限ります。
ログイン名
フル・ネーム
端末の回線名,およびその回線が,
write
コマンド (11.8 節を参照) または
talk
コマンド (11.9 節を参照) で,他のユーザからメッセージを受信できるかどうか
アイドル時間
ログイン時刻
ユーザのオフィスの所在地
finger
コマンドを使用する際に,ローカル・ホスト上のユーザのログイン名を指定すると,指定しない場合よりも詳しい情報が表示されます。
表示される追加情報は,次のとおりです。
ユーザのホーム・ディレクトリおよびログイン・シェル
ユーザのホーム・ディレクトリにある
.plan
ファイルおよび
.project
ファイルの内容 (存在する場合)
次の例では,finger
コマンドを使用して,ローカル・ホストにアカウントを持つユーザ
smith
に関する情報を表示しています。
% finger smith Login name: smith (messages off) In real life: John Smith Office: LV05-3/T24 Directory: /usr/netd/r2/smith Shell: /bin/csh On since Apr 9 16:20:56 on ttypb from wombat.lv5.dec.c 18 seconds Idle Time Project: manual, "Communicating with Network Users" Plan:
出力結果の最初の行にある
messages off
は,ユーザ
smith
が
mesg n
コマンドを
.login
ファイルに記述していることを表しています。
このコマンドを記述しておくと,ユーザ
smith
の端末は,他のユーザから
write
コマンドまたは
talk
コマンドによって送信される邪魔なメッセージを受信しなくなります。
この例では,ユーザ
smith
が自分のホーム・ディレクトリに作成した
.project
ファイルおよび
.plan
ファイルの内容も表示されています。
.project
ファイルには 1 行しか入力することができません。
.plan
ファイルには,ファイル・システムの許容限度まで行を入力することができます。
finger
コマンドは,ファイルの終端 (EOF
) までのすべての行を表示します。
10.2.2 リモート・ホスト上のユーザに関する情報の取得
次の例は,finger
コマンドによって表示された,リモート・ホスト
boston
上のユーザに関する情報を示しています。
% finger @boston [boston] Login Name TTY Idle When Office amy Amy Wilson p0 4 Thu 10:00 345 chang Peter Chang *p1 2:58 Thu 10:16 103
この出力結果の最初の行にはリモート・ホスト名
boston
,2 行目には出力の各フィールドに表示される情報の種類,3 行目以降には各ユーザに対して 1 行ずつ情報が表示されます。
アスタリスク (*
) は,ユーザ
chang
が
mesg n
コマンドを
.login
ファイルに記述して,他のユーザからの
write
コマンドまたは
talk
コマンドによるメッセージを受信しないようにしていることを示します。
10.2.3 リモート・ホスト上の各ユーザに関する情報の取得
リモート・ホスト
havana
上のユーザ
luis
に関する情報を表示するには,次のように
finger
コマンドを実行してください。
% finger luis@havana Login name: luis In real life: Luis Aguilera Directory: /users/luis Shell: /bin/csh On since May 24 10:16:07 on ttyp2 from :0.0 58 minutes Idle Time Project: baseball game simulation software Plan: Distribute with linked statistics module.
10.2.4 finger コマンドからの出力のカスタマイズ
finger
コマンドには,必要なデータに応じて出力結果を変更できるオプションが用意されています。
表 10-1
に,各オプションとその説明を示します。
オプション |
説明 |
-b |
簡易形式で出力する。 |
-f |
各フィールドのタイトルを表示しない。 |
-h |
ユーザの
.project
ファイルを表示しない。 |
-i |
ユーザとアイドル時間のリストを表示する。 |
-l |
他のオプションを無視して,詳細なフォーマットで出力する。 |
-m |
user
がアカウント名であるとみなす。 |
-p |
ユーザの
.plan
ファイルを表示しない。 |
-q |
ユーザのログイン名,端末名,およびログイン時間のみを表示する。 |
-s |
他のオプションを無視して,簡潔なフォーマットで出力する。 |
-w |
他のオプションを無視して,短い簡潔なフォーマットで出力する。 |
finger
コマンドについての詳細は,
finger
(1)10.3 リモート・ホストおよびユーザに関する情報の取得
本書で説明するコマンドを使用して,ネットワーク上でメッセージの送信やファイル転送を実行する前に,受信側のホストが現在オンラインであるかどうかを確認しなければなりません。
これを行うには,ローカルのネットワークで
rwhod
デーモンを実行しているホストに対して動作する
ruptime
コマンドを使用します。
ruptime
コマンドを実行すると,次の情報が表示されます。
ホスト名
オンライン状態 (オンラインの場合は
up
,オフラインの場合は
down
)
ホストがオンライン (またはオフライン) の状態になっている日数 (1 日より長い場合),時間と分
現在,ホストにログインしているユーザの数 (オプションを指定すると,セッションが 1 時間以上アイドル状態であるユーザを含むことができる)
ruptime
要求の前の,5 分,10 分,または 15 分間隔での負荷平均の統計
ruptime
コマンドの構文は,次のとおりです。
ruptime
[
[ option ...
] [ sort_option
] ]
オプションを指定しないで
ruptime
コマンドを実行すると,ローカル・ネットワーク上のホストに関する状態レポートは,ホスト名のアルファベット順でソートされて表示されます。
このレポートでは,ホストがオンライン (またはオフライン) 状態になっている時間は,時間;分という形式で示されます。
正の符号 (+
) が含まれている場合は,時間が 1 日 (24 時間) を超えています。
次に表示の例を示します。
% ruptime apple up 102+05:07 4 users, load 0.09, 0.04, 0.04 byblos up 3+03:17, 3 users, load 0.08, 0.07, 0.04 carpal up 2:28, 0 users, load 7.01, 5.02, 3.03 dull down 9+21:59 eager down 23+22:45 foobar up 3+01:44, 9 users, load 0.01, 0.02, 0.03 garlic up 14+01:35, 1 user, load 0.06, 0.12, 0.11 hiccup up 4+22:14, 19 users, load 6.37, 3.90, 2.71 jackal up 13+10:32, 26 users, load 0.70, 0.92, 0.95 starry up 16+21:08, 1 user, load 0.22, 0.14, 0.07 travel up 13+23:44, 7 users, load 1.01, 1.19, 0.5 trekky down 23+03:53 tribbl up 8+21:43, 0 users, load 0.00, 0.00, 0.00 trubbl up 14+02:34, 0 users, load 0.00, 0.00, 0.00 tunnel down 14+02:34 warp9 up 8+01:24, 9 users, load 0.01, 0.02, 0.03
ある 1 台のホストがオンラインであるかどうかの確認だけが必要になることがあります。
このような場合には,次に示すホスト
trekky
の例のように,ruptime
コマンドの後にホスト名を入力してください。
% ruptime trekky trekky down 23+03:53
この出力結果は,ホスト
trekky
が,現在オンラインではないことを表しています。
10.5 節で説明する
ping
コマンドを使用しても,ホストがオンラインであるかどうかを確認することができます。
ping
コマンドは,TCP/IP ネットワーク構成の各ホストに対して動作します。
リモート・ホストでコマンドを実行する場合には (第 13 章で説明),-l
オプションを指定して
ruptime
コマンドを実行し,ホストのリソースが十分かどうかを確認してください。
このコマンドを実行すると,ホストが負荷平均の降順でソートされます。
次に,ruptime -l
コマンドを実行した結果の出力例を示します。
% ruptime -l carpal up 2:28, 0 users, load 7.01, 5.02, 3.03 hiccup up 4+22:14, 19 users, load 6.37, 3.90, 2.71 travel up 13+23:44, 7 users, load 1.01, 1.19, 0.5 jackal up 13+10:32, 26 users, load 0.70, 0.92, 0.95
.
.
.
この例では,carpal
と
hiccup
以外のホストで使用量が少なくなっています。
したがって,travel
か
jackal
が使用目的に適していれば,どちらかのホストにリモートでログインできます。
リモート・ホストを長い時間使用する必要がある場合は,セッションが 1 時間以上使用中のユーザ数だけでなく,そのホストを使用しているユーザの総数を知らなければなりません。
リモート・ホスト上のユーザの総数を表示するには,-a
オプションを指定して
ruptime
コマンドを使用してください。
次の2つの例のうち,最初の例はホスト
travel
上の,2 番目の例はホスト
jackal
上のユーザの総数を示します。
% ruptime -a travel travel up 13+23:44, 32 users, load 1.01, 1.19, 0.5
% ruptime -a jackal jackal up 13+10:32, 29 users, load 0.70, 0.92, 0.95
-a
オプションおよび
-l
オプション (前述の例を参照) を指定したruptime
コマンドの実行結果から,ホスト
travel
および
jackal
には,ほぼ同数のユーザがいることがわかりますが,
現在のホスト
travel
の使用状況としては,(総数 32 人のうち) ここ 1 時間内にセッションを使用しているユーザは 7 人しかいません。
これに対し,ホスト
jackal
は,ユーザの総数は
travel
より少ないのですが,総数 29 人のユーザのうち 26 人がここ 1 時間内にセッションを使用しています。
以上のことから,時間の経過にともない,ホスト
travel
の使用量は,ユーザがログインするにつれて増加する可能性があるが,ホスト
jackal
の使用量は,ユーザのほとんどがすでにログインしているため,変わらないか減少する可能性があることがわかります。
他のオプション (-r
オプションを除く) は,別の出力フィールドによりアルファベットの降順にソートします。
昇順にソートするには,コマンド行で各オプションの後に
-r
オプションを指定してください。
ruptime
コマンドのオプションは,-r
オプション以外のオプションと組み合わせて指定しないでください。
-r
オプション以外のオプションと組み合わせて指定すると,コマンド行の最後に指定されたオプションのみが有効になります。
表 10-2
に,各オプションについて説明します。
オプション |
説明 |
-a |
セッションが 1 時間以上アイドル状態であるユーザを含め,すべてのユーザの情報を表示する。 |
-l |
5,10,および 15 分間隔の負荷平均によって出力をソートする。 |
-r |
ソート順を逆にする。 |
-t |
ホストのオンライン時間の長さによって出力をソートする。 |
-u |
ユーザ数によって出力をソートする。 |
ruptime
コマンドについての詳細は,
ruptime
(1)10.4 リモート・ホスト上のユーザに関する情報の取得
メッセージの送信またはファイル転送のコマンドを実行する前に,受信側のユーザがログインしているかどうかを確認する必要があります。
ローカルのネットワーク上のリモート・ホストにユーザがログインしているかどうかを確認するには,1 人または複数のユーザ名を指定して
rwho
コマンドを実行してください。
rwho
コマンドは,rwhod
デーモンを実行しているホストに対してのみ動作します。
不明な点がある場合は,システム管理者に問い合わせてください。
rwho
コマンドを実行すると,次の情報が表示されます。
ユーザ名
ホスト名
開始の日付と時刻
ユーザのセッションがアイドル状態であった時間 (分数)
rwho
コマンドの構文は,次のとおりです。
rwho
[
[ -a
] [ user ...
] ]
オプションを指定しないで
rwho
コマンドを実行すると,1 時間以上アイドル状態であるユーザを除いて,ローカル・ネットワーク上のホストに現在ログインしているすべてのユーザが表示されます。
ローカル・ネットワークでは,通常,ユーザ数は数十人にものぼるため,情報が必要なユーザだけを指定するようにしてください。
-a
オプションを指定すると,アイドル状態が 1 時間以上のユーザを含めてすべてのユーザが表示されますが,特定のユーザのみを指定することもできます。
これによって,ユーザが 1 時間以上アイドル状態かどうかに関係なく,リモート・ユーザがログインしているかどうかを確認することができます。
次に,-a
オプションを指定して
rwho
コマンドを実行し,ユーザ
wally
,becky
,および
smith
についての情報を表示する例を示します。
% rwho -a wally becky smith becky cygnus:pts0 Jan 17 11:20 :12 smith aquila:ttyp0 Jan 15 09:52 :22 wally lyra:pts7 Jan 17 13:15 1:32 wally lyra:pts8 Jan 17 14:15 1:01
この例のように,rwho
コマンドを実行した結果の出力は,アルファベット順にユーザ名,次にホスト名が表示されます。
アイドル時間の合計は,1 時間以上の場合,各セッションの開始時刻と日付の後にある最後のフィールドに表示されます。
-a
フラグが指定されていたので,出力には,1 時間以上アイドル状態のユーザも含まれます。
-a
フラグを指定しないで
rwho
コマンドを実行すると,ユーザ
wally
に関する情報は表示されません。
rwho
コマンドについての詳細は,
rwho
(1)10.5 リモート・ホストがオンラインであるかどうかの判定
ping
コマンドは,システム管理者がネットワーク伝送の問題を解決するために使用し,TCP/IP ネットワークに構成されたホストに対して動作します。
ネットワーク・ユーザは,このコマンドを使用して,リモート・ホストが現在オンラインであるかどうかを判断することができます。
たとえば,リモート・ホスト
moon
がオンラインであるかどうかを判定するには,ローカルのシステム・プロンプトから
ping
コマンドを入力してください。
リモート・ホストがオンラインであることを確認する出力は,Ctrl/C を押すまで,次の例のように表示されます。
% ping moon PING moon (130.180.4.108): 56 data bytes 64 bytes from 130.180.4.108: icmp_seq=0 ttl=255 time=42 ms 64 bytes from 130.180.4.108: icmp_seq=1 ttl=255 time=0 ms 64 bytes from 130.180.4.108: icmp_seq=2 ttl=255 time=0 ms 64 bytes from 130.180.4.108: icmp_seq=3 ttl=255 time=0 ms [Ctrl/C] ----moon PING Statistics---- 4 packets transmitted, 4 packets received, 0% packet loss round-trip (ms) min/avg/max = 0/11/42 ms