このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

Linux基礎:コマンド練習25

コマンド練習25

 「コマンド練習25」では、7章の後半で登場したコマンドについて 学習します。ここではシステムのログ管理や稼働状況の確認に利用されるコマンドを中心に練習します。Linux サーバーでは、システムの安定稼働やトラブルシューティングのために、ログの参照や稼働状況の確認が欠かせません。今回取り扱うコマンドを習得することで、管理者として必要な基礎力を高めることができます。

コマンド解説

1.journalctl -u sshd

 systemd 管理下の sshd サービスのログを確認します。サービス単位でログを抽出できるのが特徴です。

書式

journalctl -u sshd [オプション]

主なオプション

オプション説明
-u sshdsshd サービスのログを表示
-fログをリアルタイムで監視
--since指定日時以降のログを表示

2.less /var/log/messages

 システム全体のログをページャで閲覧するコマンドです。less を使うことでスクロールや検索が可能になります。

書式

less /var/log/messages

操作例

  • スペース:次ページへ
  • b:前ページへ
  • /文字列:検索

3.grep "error" /var/log/messages

ログファイルから "error" を含む行のみを抽出します。トラブル時のログ解析に便利です。

書式

grep "error" /var/log/messages

4.sudo tail -f /var/log/secure

 セキュリティ関連ログをリアルタイムで監視します。sshd のログイン試行などを確認する際に使用します。

書式

sudo tail -f /var/log/secure

5.uptime

システムの稼働時間、ログインユーザー数、ロードアベレージを確認します。

書式

uptime

出力例(Rocky Linux, ホスト名: rocky9, ユーザー: user)

$ uptime
 13:25:40 up 5 days,  2:31,  2 users,  load average: 0.05, 0.03, 0.00

6.dmesg

 カーネルリングバッファの内容を表示します。ハードウェア認識やドライバ関連の情報を確認するのに有効です。

書式

dmesg [オプション]

主なオプション

オプション説明
(なし)すべてのカーネルメッセージを表示
-T人間が読みやすい時刻で表示

7.last

ログイン履歴を表示します。ユーザーのログイン・ログアウトや再起動の履歴を確認できます。

書式

last

8.who

現在ログインしているユーザーを表示します。

書式

who

出力例

tanaka   pts/0   2025-09-12 10:00 (10.0.2.15)

9.w

who コマンドに加え、各ユーザーの稼働状況(実行中コマンド、アイドル時間など)も表示します。

書式

w

練習問題 + 模範解答例

問題1

sshd サービスのログを確認してください。

模範解答例

[user@rocky9 ~]$ journalctl -u sshd
 9月 14 08:45:41 rocky9 systemd[1]: Starting OpenSSH server daemon...
 9月 14 08:45:41 rocky9 sshd[1101]: Server listening on 0.0.0.0 port 22.
 9月 14 08:45:41 rocky9 sshd[1101]: Server listening on :: port 22.
 9月 14 08:45:41 rocky9 systemd[1]: Started OpenSSH server daemon.
 9月 15 01:55:45 Rocky9 sshd[5840]: Accepted password for user from ::1 port 38540 ssh2
 9月 15 01:55:45 Rocky9 sshd[5840]: pam_unix(sshd:session): session opened for user user(uid=10>
lines 1-6/6 (END)

q キーを押して終了します。

問題2

システムログを less コマンドで開き、キーワード検索ができるようにしてください。

模範解答例

[user@rocky9 ~]$ less /var/log/messages

less /var/log/messages
Sep 14 00:00:04 rocky9 systemd[1]: Starting Rotate log files...
Sep 14 00:00:04 rocky9 systemd[1]: Started Update a database for mlocate.
(省略)

問題3

/var/log/messages から "error" を含む行を抽出してください。

模範解答例

[user@rocky9 ~]$ grep "error" /var/log/messages
Sep 14 00:00:46 rocky9 cupsd[1096]: REQUEST localhost - - "POST / HTTP/1.1" 200 183 Renew-Subscription client-error-not-found
Sep 14 00:21:22 rocky9 cupsd[1096]: REQUEST localhost - - "POST / HTTP/1.1" 200 152 Cancel-Subscription client-error-not-found
(省略)

問題4

/var/log/secure をリアルタイムで監視してください。

模範解答例

[user@rocky9 ~]$ sudo tail -f /var/log/secure
[sudo] user のパスワード:
Sep 15 01:35:03 rocky9 sudo[5654]: pam_unix(sudo:session): session opened for user root(uid=0) by user(uid=1000)
Sep 15 01:35:03 rocky9 sudo[5654]: pam_unix(sudo:session): session closed for user root
Sep 15 01:40:59 rocky9 sudo[5713]:    user : TTY=pts/0 ; PWD=/home/user ; USER=root ; COMMAND=/bin/hostnamectl set-hostname Rocky9
(省略)

Ctrl + c キーで終了させます。

問題5

システムの稼働時間を表示してください。

模範解答例

[user@rocky9 ~]$ uptime
 03:07:45 up 18:22,  2 users,  load average: 0.00, 0.00, 0.00

問題6

カーネルメッセージを時刻付きで表示してください。

模範解答例

[user@rocky9 ~]$ dmesg -T
[日  9月 14 08:45:34 2025] Linux version 5.14.0-570.39.1.el9_6.x86_64 (mockbuild@iad1-prod-build001.bld.equ.rockylinux.org) (gcc (GCC) 11.5.0 20240719 (Red Hat 11.5.0-5), GNU ld version 2.35.2-63.el9) #1 SMP PREEMPT_DYNAMIC Sat Sep 6 20:23:03 UTC 2025
[日  9月 14 08:45:34 2025] The list of certified hardware and cloud instances for Enterprise Linux 9 can be viewed at the Red Hat Ecosystem Catalog, https://catalog.redhat.com.
(省略)

問題7

ユーザーのログイン履歴を確認してください。

模範解答例

[user@rocky9 ~]$ last
user     pts/2        ::1              Mon Sep 15 01:55 - 01:57  (00:01)
user     tty2         tty2             Sun Sep 14 08:46   still logged in
user     seat0        login screen     Sun Sep 14 08:46   still logged in
reboot   system boot  5.14.0-570.39.1. Sun Sep 14 08:45   still running
(省略)

問題8

現在ログインしているユーザーを確認してください。

模範解答例

[user@rocky9 ~]$ who
user     seat0        2025-09-14 08:46 (login screen)
user     tty2         2025-09-14 08:46 (tty2)

問題9

現在ログイン中のユーザーと、その稼働状況を表示してください。

模範解答例

[user@rocky9 ~]$ w
 03:10:51 up 18:25,  2 users,  load average: 0.18, 0.05, 0.01
USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
user     seat0     日08    0.00s  0.00s  0.00s /usr/libexec/gdm-wayland-sess
user     tty2      日08   18:25m  0.02s  0.02s /usr/libexec/gnome-session-bi

まとめ

「コマンド練習25」では、7章の後半で登場したコマンドについて 実践的に学びました。

  • journalctl/less/grep/tail でログ管理・解析
  • uptime/dmesg でシステム稼働状況の確認
  • last/who/w でユーザー状況の把握

 これらはシステムの健全性を維持するための基本スキルです。トラブルシューティングやセキュリティ監視の場面で役立ちます。