目次
はじめに
みなさま、lastコマンドを活用されてますでしょうか。
サーバー監視で負荷上昇等アラートを検知した際、誰かログインして作業していないかを調べるため利用しています。
ユーザーがログイン、ログアウトした時刻を確認することができます。
そんなlastコマンドの使い方を紹介します。
環境
OS : AlmaLinux 8
lastバージョン : 2.32.1
使い方
早速、last コマンドを実行してみます。
$ last | head
test pts/0 192.0.2.114 Sun Oct 20 11:49 still logged in
test pts/0 192.0.2.114 Fri Oct 18 10:38 - 11:34 (1+00:56)
test pts/0 192.0.2.114 Tue Oct 15 11:39 - 11:40 (00:01)
test pts/1 test.example Thu Oct 10 17:56 - 21:10 (03:13)
test pts/0 192.0.2.114 Thu Oct 10 17:56 - 21:10 (03:14)
test pts/0 192.0.2.114 Sun Oct 6 09:22 - 09:44 (00:22)
test pts/0 192.0.2.114 Thu Sep 26 16:31 - 17:33 (01:02)
test pts/1 192.0.2.114 Tue Sep 24 19:53 - 22:19 (02:26)
test pts/0 192.0.2.114 Tue Sep 24 17:42 - 19:57 (02:15)
test pts/0 192.0.2.114 Mon Sep 23 17:28 - 18:26 (00:58)
$
動作検証用のテストサーバーなので、ユーザー:testばかりですが、対象サーバーにログインしたユーザーの履歴が表示されます。
-i オプションを指定すると、ログイン元ホストをIPアドレスで表示することができます。
$ last -i | head
test pts/0 192.0.2.114 Sun Oct 20 11:49 still logged in
test pts/0 192.0.2.114 Fri Oct 18 10:38 - 11:34 (1+00:56)
test pts/0 192.0.2.114 Tue Oct 15 11:39 - 11:40 (00:01)
test pts/1 192.0.2.129 Thu Oct 10 17:56 - 21:10 (03:13)
test pts/0 192.0.2.114 Thu Oct 10 17:56 - 21:10 (03:14)
test pts/0 192.0.2.114 Sun Oct 6 09:22 - 09:44 (00:22)
test pts/0 192.0.2.114 Thu Sep 26 16:31 - 17:33 (01:02)
test pts/1 192.0.2.114 Tue Sep 24 19:53 - 22:19 (02:26)
test pts/0 192.0.2.114 Tue Sep 24 17:42 - 19:57 (02:15)
test pts/0 192.0.2.114 Mon Sep 23 17:28 - 18:26 (00:58)
$
ホスト名:test.example.com で表示されていたものが、IPアドレスでの表示になります。
test pts/1 test.example.com Thu Oct 10 17:56 - 21:10 (03:13)
test pts/1 192.0.2.129 Thu Oct 10 17:56 - 21:10 (03:13)
-F オプションを指定すると、ログインおよびログアウトの日時を表示することができます。
$ last -F | head
test pts/0 192.0.2.114 Sun Oct 20 11:49:52 2024 still logged in
test pts/0 192.0.2.114 Fri Oct 18 10:38:00 2024 - Sat Oct 19 11:34:10 2024 (1+00:56)
test pts/0 192.0.2.114 Tue Oct 15 11:39:42 2024 - Tue Oct 15 11:40:47 2024 (00:01)
test pts/1 test.example Thu Oct 10 17:56:31 2024 - Thu Oct 10 21:10:09 2024 (03:13)
test pts/0 192.0.2.114 Thu Oct 10 17:56:06 2024 - Thu Oct 10 21:10:08 2024 (03:14)
test pts/0 192.0.2.114 Sun Oct 6 09:22:06 2024 - Sun Oct 6 09:44:45 2024 (00:22)
test pts/0 192.0.2.114 Thu Sep 26 16:31:02 2024 - Thu Sep 26 17:33:42 2024 (01:02)
test pts/1 192.0.2.114 Tue Sep 24 19:53:04 2024 - Tue Sep 24 22:19:46 2024 (02:26)
test pts/0 192.0.2.114 Tue Sep 24 17:42:01 2024 - Tue Sep 24 19:57:46 2024 (02:15)
test pts/0 192.0.2.114 Mon Sep 23 17:28:45 2024 - Mon Sep 23 18:26:54 2024 (00:58)
$
日をまたいでログアウトした場合、ログアウトした日付が表示されましせんが、-Fを指定することで表示することができます。
test pts/0 192.0.2.114 Fri Oct 18 10:38 - 11:34 (1+00:56)
test pts/0 192.0.2.114 Fri Oct 18 10:38:00 2024 - Sat Oct 19 11:34:10 2024 (1+00:56)
最後に、-x オプションの紹介です。シャットダウンやランレベルが変わった時間を表示することができます。
$ last -x
~
test pts/0 192.0.2.114 Mon Apr 17 11:49 - 11:49 (00:00)
runlevel (to lvl 3) 4.18.0-425.1 Mon Apr 17 09:52 still running
reboot system boot 4.18.0-425.1 Mon Apr 17 09:29 still running
shutdown system down 4.18.0-348.7 Mon Apr 17 09:25 - 09:29 (00:04)
test pts/0 192.0.2.114 Mon Apr 17 09:20 - 09:22 (00:02)
~
$
OSの再起動は、オプションを指定しないと、rebootのみ表示されますが、-xを指定することで、
前後のshutdownとrunlevelも表示することができます。便利ですね。
まとめ
いかがでしたか?
ユーザーのログイン履歴と、OS再起動についても実行日時を確認することができます。
サーバーの運用管理に是非とも活用ください。