Linux共通

【Linux初心者必見】ログインユーザの確認方法とIDについて

Linuxを操作している時にログインしているユーザはどれほどいるのか調べたい時は、これから紹介していくコマンドを利用していきます。それぞれのコマンドには表示する情報にがあったりと使用する用途によって使い分けてください。

この記事でわかる事

ログインしているユーザのみ、またはログインしているユーザとそのユーザの情報の表示してくれるコマンドと使い方について。

ログインしているユーザのid情報を調べる方法について

それでは紹介してきます。

コマンド

ホストのログイン中のユーザを調べるコマンドについて紹介していきます。いくつかありますが、表示形式が違ったり、情報に差異があったりと用途によって使い分けますので、是非使いこなしていきましょう。

w:ログインしているユーザとログインしているユーザが何をしているか表示します

wはログインしているユーザと何をしているか表示してくれます。

wコマンドの結果

mitsublog@mitsublog:~$ w
16:03:58 up 29 min, 3 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
mitsublo :0 :0 15:34 ?xdm? 24.40s 0.01s /usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_
mitsublo pts/1 192.168.1.100 15:35 28:20 0.01s 0.01s -bash
mitsublo pts/2 192.168.1.100 15:36 2.00s 0.07s 0.00s w

それでは各セクションの意味合いについて紹介します。

セクション 説明
USER ホスト名
TTY 端末
FROM 接続元IP
LOGIN@ ログイン時間
IDLE 経過時間
JCPU その端末で実行した全プロセスが使った時間
PCPU カレントプロセスが使用した時間
WHAT 現在実行中のプロセス

書式

w [オプション] [ユーザ名]

オプション

オプション 説明
-i 接続元をIPアドレスで表示します。名前解決できている環境だとホスト名で表示されるが、それができていない場合は-d使用せずIPアドレスで表示される。
-o cpu時間も表示します。
-f from欄の表示を切り替えます。
-h ヘッダー行(先頭行)を表示しない
-s cpu欄が表示されません。

who:どのユーザがログインしているか表示します

だれがログインしているを表示します。wと違い誰がログインしているかのみ知りたい場合利用します。

オプション

オプション 説明
-b,--boot 最後のシステム起動時刻
-H,--header ヘッダーを表示する
-r,--runlevel ランレベルも表示します
-s,--short 短い形式で表示します。デフォルト

 

whoami:ログインしているユーザid名を表示します

ログインしているユーザ名を表示します。

ログインしているユーザid名を表示します

mitsublog@mitsublog:~$ whoami
mitsublog
mitsublog@mitsublog:~$

id:ユーザidと加入しているグループidを表示します

ユーザのユーザidとグループidについて表示します。

ユーザidと加入しているグループidを表示します

mitsublog@mitsublog:~$ id
uid=1000(mitsublog) gid=1000(mitsublog) groups=1000(mitsublog),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),121(lpadmin),132(sambashare)
mitsublog@mitsublog:~$

オプション

オプション 説明
-g,--group 自身のグループIDのみ表示します。
-G,--groups 加入しているグループIDをすべて表示します

 

users:ログインしているユーザを一覧表示します

ログインしているユーザを一覧表示します。

users:指定したホストでログインしているユーザを一覧表示します

mitsublog@mitsublog:~$ users
mitsublog mitsublog mitsublog
mitsublog@mitsublog:~$

 

実行例

w:ログインしているユーザとそのユーザが何をしているか表示します。

このようにログインユーザの情報を表示してくれます。

wコマンドの実行結果

mitsublog@mitsublog:~$ w
15:36:19 up 1 min, 3 users, load average: 0.62, 0.39, 0.15
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
mitsublo :0 :0 15:34 ?xdm? 22.11s 0.01s /usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_
mitsublo pts/1 192.168.1.100 15:35 41.00s 0.01s 0.01s -bash
mitsublo pts/2 192.168.1.100 15:36 3.00s 0.01s 0.00s w
mitsublog@mitsublog:~$

どのユーザがcpuを占有しているか、またログインユーザにメッセージを飛ばしたい時に使います。

それでは下記からwコマンドのオプションについて紹介していきます。

-o:cpu時間も表示

表示結果にcpu時間も表示します。

cpu時間も表示します。

USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
mitsublo :0 :0 15:34 ?xdm? /usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_MO
mitsublo pts/1 192.168.1.100 15:35 1:58 -bash
mitsublo pts/2 192.168.1.100 15:36 40:36m sshd: mitsublog [priv] mitsublo pts/3 192.168.1.100 16:59 w -o
mitsublog@mitsublog:~$

-f:FROMの表示の切り替えを行います

FROM欄の表示を切り替えます。実行することにより非表示になります。

FROMの表示を切り替えます

USER TTY LOGIN@ IDLE JCPU PCPU WHAT
mitsublo :0 15:34 ?xdm? 38.94s 0.01s /usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_MODE=zorin /usr/bi
mitsublo pts/1 15:35 1:59m 0.01s 0.01s -bash
mitsublo pts/2 15:36 41:14 0.13s 0.01s sshd: mitsublog [priv] mitsublo pts/3 16:59 2.00s 0.06s 0.01s w -f
mitsublog@mitsublog:~$

-h:ヘッダー行(先頭行)を表示しない

その列が何を表すか表示される先頭行が表示されません。

ヘッダーを表示しない

mitsublo :0 :0 15:34 ?xdm? 22.16s 0.01s /usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_MO
mitsublo pts/1 192.168.1.100 15:35 43.00s 0.01s 0.01s -bash
mitsublo pts/2 192.168.1.100 15:36 3.00s 0.01s 0.00s w -h
mitsublog@mitsublog:~$

-s:cpu欄が非表示

cpu時間を表す欄が表示されません。

cpu欄を非表示

mitsublog@mitsublog:~$ w -s
15:36:58 up 2 min, 3 users, load average: 0.31, 0.34, 0.14
USER TTY FROM IDLE WHAT
mitsublo :0 :0 ?xdm? /usr/libexec/gdm-x-session --run-script env GNOME_SHELL_SESSION_MODE=zorin /usr/bin/gn
mitsublo pts/1 192.168.1.100 1:20 -bash
mitsublo pts/2 192.168.1.100 2.00s w -s
mitsublog@mitsublog:~$

 

who:ログインしているユーザを一覧表示します

ポイント

mitsublog@mitsublog:~$ who
mitsublog :0 2022-04-21 15:34 (:0)
mitsublog pts/1 2022-04-21 15:35 (192.168.1.100)
mitsublog pts/2 2022-04-21 15:36 (192.168.1.100)
mitsublog@mitsublog:~$

who -b:最後に起動した時間を表示します

最後に起動した時間を表示します。

最後に起動した時間を抽出

mitsublog@mitsublog:~$ who -b
システム起動 2022-04-21 15:34
mitsublog@mitsublog:~$

who -H:ヘッダーを表示します

ヘッダーを表示します。

mitsublog@mitsublog:~$ who -H
名前 端末 時間 コメント
mitsublog :0 2022-04-21 15:34 (:0)
mitsublog pts/1 2022-04-21 15:35 (192.168.1.100)
mitsublog pts/2 2022-04-21 15:36 (192.168.1.100)
mitsublog@mitsublog:~$

who -r:ランレベルも表示します

表示結果にランレベルも表示されます。

ランレベルも表示します

mitsublog@mitsublog:~$ who -r
run-level 5 2022-04-21 15:35
mitsublog@mitsublog:~$

who -s:短い形式で表示します(デフォルト)

whoのみでも同様の結果になりますが、-sをつけると短い形式で表示します。

短い形式で表示します(デフォルト)

mitsublog@mitsublog:~$ who -s
mitsublog :0 2022-04-21 15:34 (:0)
mitsublog pts/1 2022-04-21 15:35 (192.168.1.100)
mitsublog pts/2 2022-04-21 15:36 (192.168.1.100)
mitsublog@mitsublog:~$

whoami:ログイン中のユーザIDを取得

ログイン中のユーザIDを取得します。

whoami実行結果

mitsublog@mitsublog:~$ whoami
mitsublog
mitsublog@mitsublog:~$

 

id:ログイン中のユーザIDとグループIDを表示します

ログイン中のユーザIDとグループIDを表示します。

id実行結果

mitsublog@mitsublog:~$ id
uid=1000(mitsublog) gid=1000(mitsublog) groups=1000(mitsublog),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),121(lpadmin),132(sambashare)
mitsublog@mitsublog:~$

-g:自身のグループIDを表示します

自身のグループIDを表示します。

自身グループIDを表示します。

mitsublog@mitsublog:~$ id -g
1000
mitsublog@mitsublog:~$

 

-G:指定したユーザが含まれているグループを表示します

指定したユーザが含まれているグループを表示します。

指定したユーザが含まれているグループを表示します

mitsublog@mitsublog:~$ id -G
1000 4 24 27 30 46 121 132
mitsublog@mitsublog:~$

 

users:ログインしているユーザを一覧表示します

指定したホストにログインされているユーザを一覧表示します。

users:指定したホストでログインしているユーザを一覧表示します

mitsublog@mitsublog:~$ users
mitsublog mitsublog mitsublog
mitsublog@mitsublog:~$

まとめ

今回は以上になります。まとめに入ります。

まとめ

ログイン中のユーザと詳細を知りたい場合はwコマンドを利用します。

ユーザ情報のみ知りたい場合はwho,whoami,usersコマンドを主に利用します。

ログイン中のユーザidを知りたい場合はidコマンドを利用します。

以上になります。Linux端末を操作している時に他にユーザがログインしているか調べるのに役立ちますので、是非覚えていってください。

 

  • この記事を書いた人
  • 最新記事

ミツ

サーバ初心者向け「server-beginner」を運営する「ミツ」と申します。 Linux系やwindows系などのサーバに関する部分をメインで執筆していきますので、興味ある方はぜひご覧いただけますと幸いです。 <経歴> 専門学校卒業後、ネットワーク、インフラ、プログラミングを一通り経験。 当メディアでは主にLinux分野に関する内容を発信していきます。

-Linux共通