Linux システムでは、すべてが /var/log というディレクトリの下のログ ファイルに記録されます。このディレクトリには、さまざまなサービスやアプリケーションに関連するログが含まれています。このディレクトリには、utmp などのファイルがあります。 、wtmp と btmp .システム ログ ファイルや認証ログ ファイルとは異なり、これらのファイルはすべてバイナリ ファイルです。そのため、less や grep などの通常のテキスト ツールを使用して、それらを読み取ったり、そこから情報を抽出したりすることはできません。代わりに、これらのバイナリ ファイルを読み取ることができるいくつかの特別なツールを使用します。
- utmp ユーザーのログイン、端末、ログアウト、システム イベント、システムの現在のステータス、システムの起動時間 (アップタイムで使用) などの全体像を把握できます。
- wtmp utmp の履歴データを提供します。
- btmp 失敗したログイン試行のみを記録します。
w and who コマンド
w コマンドと who コマンドは、ログインしているユーザーとそのユーザーが何をしているかに関する情報を /var/run/utmp ファイルから取得します。現在ログインしているユーザーのリストを表示するには、who を使用します:
$ who geek console Jul 1 23:27 geek ttys000 Jul 7 13:13 geek ttys001 Jul 18 18:34
最後のコマンド
最後 コマンドは、ログイン方法、ログイン日時、ログアウト日時などの情報を画面に表示します。
# last
最後のコマンドを使用して、wtmp、utmp、および btmp ファイルの内容を読み取ることもできます。例:
# last -f /var/log/wtmp ### To open wtmp file and view its content use blow command. # last -f /var/run/utmp ### To see still logged in users view utmp file use last command. # last -f /var/log/btmp ### To view btmp file use same command.
lastb コマンド
次のように入力して、/var/run/btmp に含まれるログに記録されたセッションの現在の履歴を確認できます。
# lastb
utmpdump コマンド
ここで、単に last、who、lastb などの基本的なコマンドに依存するのではなく、cat、less、および more などの基本的な読み取りコマンドを使用してバイナリ ファイルを表示できないことを考えると、別のアプローチは次のような utmpdump コマンドを使用することです。これ:
# utmpdump /path/to/binary
したがって、wtmp、utmp、または btmp のバイナリ ファイルの内容を読みたい場合は、次のようにコマンドを使用します。
# utmpdump /var/run/utmp # utmpdump /var/log/wtmp # utmpdump /var/log/btmp