9.5 ログイン管理
Linux Essentials Online Text | 2021/07/27

ユーザの識別情報を確認する(id)

Linuxではユーザ情報をIDで管理し識別します。IDは、idコマンドを使って確認します。

書式:

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

主なオプション:

-uユーザIDのみを表示する
-gプライマリグループIDを表示する
-G対象ユーザが所属する全てのグループを表示する

オプションを指定せずに実行すると全ての情報が表示されます。

<実習: 自身のユーザ識別情報を確認する>

自身のアカウントのユーザ情報を確認してみましょう。(root権限で実行して下さい。)

# id lpic-user
uid=1000(lpic-user) gid=1000(lpic-user) groups=1000(lpic-user)

ユーザIDのみ、グループIDのみを確認することもできます。

# id -u lpic-user
1000
# id -g lpic-user
1000

ログイン中のユーザを確認する(who)

Linuxシステムを運用していると、現在誰がログインしているかを確認しなければならない場合があります。この様な場合にはwhoコマンドを使用します。

書式:

who [オプション]

主なオプション:

-a全ての情報を表示します
-uログインしているユーザの情報を表示します

<実習:whoコマンドの実行>

whoコマンドを実行してみます。

# who
lpic-user	 pts/0        2020-06-17 00:45 (gateway)

現在、該当システムにアクセスしているユーザ名と使用しているpst(仮想端末)、アクセスした時間、アクセス元IPアドレスが表示されます。

ログイン中のユーザと実行プロセスを確認する(w)

wコマンドは「現在誰がログインしているか」だけでなく、どのようなプロセスを実行しているかを確認することができます。

書式:

w [オプション]
w [ユーザ名1] [ユーザ名2] [ユーザ名3] ・・・

wの後にユーザを指定すると、指定したユーザの情報を表示します。複数のユーザ情報を確認したい場合は、スペースで区切って羅列していきます。

<実習:whoコマンドの実行>

# w
 05:19:43 up 4 days, 18:07,  1 user,  load average: 0.00, 0.01, 0.05
USER    TTY   FROM     LOGIN@  IDLE   JCPU  PCPU  WHAT
lpic-user pts/0  gateway    00:45  7.00s  0.05s  0.34s  sshd: lpic-user

一番右に記載されているのが実行されているのが、実行されているプロセスです。上記では、ユーザ「hogehoge」がsshdを使っていることがわかります。

ユーザの最終ログイン時間を確認する(last)

whoやwコマンドはリアルタイムなログイン状態を確認するコマンドです。そのため、誰がいつログイン、ログアウトしたか、といった過去の情報はわかりません。各ユーザの最終ログイン時間を確認するにはlastコマンドを使います。

書式:

last [オプション]

主なオプション:

-n 行数表示するコマンドの行数を指定します
-行数表示するコマンドの行数を指定します
-t 日時指定した日時(YYYYMMDDhhmmss)より前のログイン情報を表示します

<実習:lastコマンドの実行>

# last
lpic-user  pts/0  kd114019176110.p	Fri	May 22 05:44  still logged in
lpic-user  pts/0  kd114019176110.p	Fri	May 22 01:49 - 03:53  (02:04)
lpic-user  pts/0  kd114019176110.p	Thu	May 21 08:42 - 10:00  (01:17)
lpic-user  pts/1  kd114019176110.p	Thu	May 21 04:57 - 10:35  (05:38)
lpic-user  pts/0  p4669109-ipngn26	Thu	May 21 04:17 - 06:26  (02:09)

lastコマンドはログインの記録(/var/log/wtmp)に基づき、ログインの履歴を一覧表示します。上から、新しいログイン順に表示されます。

PAGE TOP