Linuxコマンド · 1 min read · Sep 20, 2025

初心者のためのLinux lastコマンドチュートリアル(8つの例)

Linux lastコマンドは、システムへの最近のログインに関する詳細情報を提供する便利なユーティリティです。システムのログファイル、特に/var/log/wtmpをクエリすることで、ユーザーセッションの包括的なリストを表示します。これには、ユーザー名、端末名、IPアドレス(該当する場合)、および各セッションの時間と期間が含まれます。このコマンドは、システム管理者がユーザーの活動を監視し、ログイン試行を追跡し、不正アクセスを特定するために特に価値があります。さらに、lastは、特定のユーザーのログインのみを表示したり、特定の日付範囲のエントリを表示したりするなど、結果をフィルタリングするためのさまざまなオプションでカスタマイズできるため、システム管理とセキュリティ監査のための多用途なツールです。

システム管理に不慣れな場合、資格情報にアクセスしたり監視したりする必要があるかもしれません。この目的のためにいくつかのツールを使用することになるでしょうが、そのうちの1つがlastです。このチュートリアルでは、いくつかのわかりやすい例を用いてこのプログラムの基本機能を説明します。

説明に入る前に、ここにあるすべての例はUbuntu 24.04システムでテストされていますが、最近のLinuxディストリビューションでは同じように動作するはずです。

Linux lastコマンド

lastコマンドは、最後にログインしたユーザーのリストを表示します。以下はその構文です:

last [options] [username...] [tty...]

ここで、manページはこのツールを次のように説明しています:

       last  searches  back through the /var/log/wtmp file (or the file desig?  
       nated by the -f option) and displays a list of all users logged in (and  
       out)  since  that  file was  created.  One or more usernames and/or ttys  
       can be given, in which case last will show only  the  entries  matching  
       those  arguments.  Names of ttys can be abbreviated, thus last 0 is the  
       same as last tty0.  
  
       When catching a SIGINT signal (generated by the interrupt key,  usually  
       control-C)  or a SIGQUIT signal, last will show how far it has searched  
       through the file; in the case of the SIGINT signal last will then  ter?  
       minate.  
  
       The  pseudo user reboot logs in each time the system is rebooted.  Thus  
       last reboot will show a log of all the reboots since the log  file  was  
       created.

以下は、lastがどのように機能するかをよりよく理解するためのQ&A形式の例です。

Q1. lastコマンドの使い方は?

基本的な使用法は非常に簡単です。オプションなしで「last」コマンドを実行するだけです:

last

lastコマンドの使い方

Q2. 非ローカルログインの場合に出力をカスタマイズするには?

デフォルトでは、非ローカルプラグインの場合、lastコマンドは次のように出力を表示します:

注:スクリーンショットでは、IPアドレスを含む一部の部分を意図的にぼかしています。

今、もし望むなら、IPアドレスに関連する列を極端な右に移動することで、この出力を少しカスタマイズできます。これは、-aコマンドラインオプションを使用して行うことができます。

Q3. lastが異なるファイルを読み取るようにするには?

チュートリアルの最初で述べたように、lastコマンドは出力を準備するために/var/log/wtmpファイルを読み取ります。ただし、望む場合は、ツールにまったく異なるファイルを読み取らせることができます。これは、-fコマンドラインオプションを使用して行うことができます。もちろん、このオプションに新しいファイル名(パスを含む)を入力として渡す必要があります。

last -f [new-file-path-and-name]

Q4. lastが完全な日付と時間情報を出力するようにするには?

lastが出力に完全な日付と時間情報を生成するようにするには、-Fコマンドラインオプションを使用します。

last -F

lastが完全な日付と時間情報を出力するようにするには

Q5. lastが特定の行数のみを表示するようにするには?

lastコマンドが出力に表示する行数をカスタマイズしたい場合は、-nコマンドラインオプションを使用してそれを行うことができます。もちろん、このオプションに数値を入力として渡す必要があります。

例えば:

last -n 3

これにより、出力には3行のみが含まれます。

Q6. lastが出力のホスト名フィールドを抑制するようにするには?

lastの出力の3番目の列はホスト名情報です。ただし、何らかの理由でツールにこの情報を抑制させたい場合は、-Rコマンドラインオプションを使用します。

last -R

lastが出力のホスト名フィールドを抑制するようにするには

Q7. lastが特定の期間の情報を表示するようにするには?

lastが時間に基づいて出力を表示するようにしたい場合、たとえば昨日と今日の情報のみを表示したい場合は、-sおよび-tコマンドラインオプションを使用できます。

例えば:

last -s yesterday -t today

以下の形式を理解するオプションに注意してください:  
       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

Q8. lastがランレベルの変更などを表示するようにするには?

ランレベルの変更やシステムシャットダウンのエントリなどの情報を表示するには、-xコマンドラインオプションを使用します。

last -x

lastがランレベルの変更などを表示するようにするには

結論

確かに、lastは毎日使用するコマンドの1つではありませんが、このツールが大いに役立つ日があるでしょう。このチュートリアルでは、ここでいくつかの主要なオプションをカバーしました - これで始めるには十分です。詳細については、ユーティリティのmanページにアクセスしてください。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。