LAST, LASTB(1)

名前
last, lastb - 最近ログインしたユーザを一覧表示する

書式
last [options] [username...] [tty...]
lastb [options] [username...] [tty...]

説明
last は、/var/log/wtmp ファイルを (または、-f オプションによって指定されたファイルを) 遡って調べて、そのファイルが作成されて以来ログインした (そして、ログアウトした) すべてのユーザのリストを表示する。一つ以上のユーザ名 (username) や端末名 (tty) を引き数として渡すこともでき、 その場合は、そうした引き数にマッチした記録 (entry) のみを表示することになる。tty の名前は、短縮することができる。たとえば、last 0 は、 last tty0 と同じである。

SIGINT シグナルや SIGQUIT シグナルを受け取ると (前者は、割り込みキー、普通は Control-C を押すと発生する）、last は、ログファイルの検索結果をやったところまで表示し、SIGINT シグナルの場合は、そこで動作を打ち切る。

[訳注]
    原文は「SIGINT シグナルの場合は、そこで terminate する」と言っている。terminate というのは、この場合、単に終了するだけで、中断した後、実行を再開したり、core を吐いたりといった、それ以上のことはしないということだろう。SIGQUIT シグナルの場合はどうなるのだろうか。

システムをリブートするたびに、疑似ユーザの reboot がログインする。 従って、last reboot を実行すると、 ログファイルが作成されて以来のすべてのリブートの記録を表示することになる。

lastb は、last とよく似ている。ただし、こちらがデフォルトで表示するのは、 ファイル /var/log/btmp に記録されたログである。 そこには、ログインに失敗したすべての試みが記録されている。

オプション

-a, --hostlast
    ホスト名を最後の列 (column) に表示する。--dns オプションと組み合わせて使うと便利である。

-d, --dns
    ローカル以外のログインに対して、Linux はそのリモートホストのホスト名だけでなく、IP アドレスも記録する。このオプションは、IP アドレスを変換して、ホスト名に戻す。

-f, --file file
    /var/log/wtmp の代わりに特定のファイル file を使用せよと last に命ずる。--file オプションは複数回指定することができ、 その場合は、指定されたすべてのファイルが処理されることになる。

-F, --fulltimes
    ログイン、ログアウトの詳細な日時を表示する。

-i, --ip
    --dns と似ているが、ホストの名前ではなく、IP アドレスの方を表示する。

-number
-n, --limit number
    何行表示すべきかを last に指示する。

-p, --present time
    指定された日時にログインしていたユーザを表示する。このオプションは、--since と --until オプションに同じ日時 time を指定して、一緒に使うのとほぼ同じである。

-R, --nohostname
    ホスト名のフィールドを表示しない。

-s, --since time
    指定した日時 time 以後のログイン状態を表示する。このオプションは、 たとえば、特定の日時に誰がログインしていたかを手早く突き止めたいときに、便利である。 --until と組み合わせて使うことが多い。

-t, --until time
    指定した日時 time までのログイン状態を表示する。

--time-format format
    出力するタイムスタンプの書式を format にする。format は、notime, short, full, iso の内のどれかである。notime はタイムスタンプを全く表示せず、short はデフォルト、full は --fulltimes オプションと同じである。iso は ISO-8601 のフォーマットでタイムスタンプを表示する。ISO フォーマットは、タイムゾーンの情報を含んでいるので、 ログのプリントアウトがシステムの外部で調べられるときに、望ましい形式になる。

-w, --fullnames
    省略しないユーザ名とドメイン名を出力に表示する。

-x, --system
    システムのシャットダウンとランレベル変更の記録を表示する。

日時の書式
引き数に time を取るオプションは、以下の書式を解する。
YYYYMMDDhhmmss
YYYY-MM-DD hh:mm:ss
YYYY-MM-DD hh:mm | (秒は 00 になる)
YYYY-MM-DD | (時刻は 00:00:00 になる)
hh:mm:ss | (日付は今日になる)
hh:mm | (日付は今日、秒は 00)
now
yesterday | (時刻は 00:00:00 になる)
today | (時刻は 00:00:00 になる)
tomorrow | (時刻は 00:00:00 になる)
+5min
-5days

注記
wtmp や btmp といったファイルは、存在しないことがある。 システムは、そうしたファイルが存在するときにだけ、情報をそこに記録するのである。 このへんのことは、個々のサイトにおける設定の問題である。 もし、こうしたファイルを使用したいのなら、touch のような単純なコマンドでそれを作成すればよい (たとえば、touch /var/log/wtmp で)。

ファイル
/var/log/wtmp
/var/log/btmp

作者
Miquel van Smoorenburg <miquels@cistron.nl>

入手方法
この last コマンドは、util-linux パッケージの一部であり、Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/> から入手できる。

関連項目
login(1), wtmp(5), init(8), shutdown(8)