LinuCレベル2 201試験の例題と解説

2.03.3ネットワークの問題解決

LinuCレベル2 201試験の出題範囲から「2.03.3 ネットワークの問題解決」についての例題を解いてみます。
このテーマは、ネットワークの問題解決に関する内容が含まれます。設定内容・状態の把握だけでなく、ログの確認など特にトラブルシュートに役に立つ内容が含まれるのでしっかりと理解しておきましょう。

Linucレベル2 201試験 出題範囲


例題

systemdのジャーナル(ログ)を確認したい。
systemd unitとしてsmbを指定するためのオプションとして、空欄に入るものはどれか。

journalctl ( ) smb

  1. -k
  2. -p
  3. -u
  4. -S

※この例題は実際の試験問題とは異なります。


解答と解説

正解は、「3.-u」です。

その他のオプションは、以下のような意味になります。

-kカーネルメッセージの表示
-p表示するログの優先度指定
-S表示するログの開始日時指定

では、実際の操作を見ながら確認していきましょう。

まずは、-uと-S・-U(表示するログの終了日時)を使った例です。

[root@localhost ~]# journalctl -u smb -S "2023-04-30 00:00:00" -U "2023-04-30 23:59:59"
-- Logs begin at 日 2023-04-30 11:33:16 JST, end at 月 2023-05-01 00:40:01 JST. --
 4月 30 11:52:07 localhost.localdomain systemd[1]: Starting Samba SMB Daemon...
 4月 30 11:52:07 localhost.localdomain smbd[1652]: [2023/04/30 11:52:07.928019,  0] ../../lib/util/become_daemon.c:136(daemon_ready)
 4月 30 11:52:07 localhost.localdomain systemd[1]: Started Samba SMB Daemon.
 4月 30 11:52:07 localhost.localdomain smbd[1652]:   daemon_ready: daemon 'smbd' finished starting up and ready to serve connections
 4月 30 23:53:52 localhost.localdomain systemd[1]: Starting Samba SMB Daemon...
 4月 30 23:53:52 localhost.localdomain smbd[6692]: [2023/04/30 23:53:52.282986,  0] ../../lib/util/become_daemon.c:136(daemon_ready)
 4月 30 23:53:52 localhost.localdomain systemd[1]: Started Samba SMB Daemon.
 4月 30 23:53:52 localhost.localdomain smbd[6692]:   daemon_ready: daemon 'smbd' finished starting up and ready to serve connections

続いて、-pで優先度を指定した例です。
指定する優先度によって、表示されるログ量に違いがあることが分かります。

[root@localhost ~]# journalctl -u smb -p 3
-- Logs begin at 日 2023-04-30 11:33:16 JST, end at 月 2023-05-01 00:40:01 JST. --
 4月 30 11:52:07 localhost.localdomain smbd[1652]: [2023/04/30 11:52:07.928019,  0] ../../lib/util/become_daemon.c:136(daemon_ready)
 4月 30 11:52:07 localhost.localdomain smbd[1652]:   daemon_ready: daemon 'smbd' finished starting up and ready to serve connections
 4月 30 23:53:52 localhost.localdomain smbd[6692]: [2023/04/30 23:53:52.282986,  0] ../../lib/util/become_daemon.c:136(daemon_ready)
 4月 30 23:53:52 localhost.localdomain smbd[6692]:   daemon_ready: daemon 'smbd' finished starting up and ready to serve connections
 5月 01 00:34:14 localhost.localdomain smbd[6692]: [2023/05/01 00:34:14.947783,  0] ../../lib/param/loadparm.c:1609(set_variable_helper)
 5月 01 00:34:14 localhost.localdomain smbd[6692]:   set_variable_helper(What): value is not boolean!
 5月 01 00:35:30 localhost.localdomain smbd[6692]: [2023/05/01 00:35:30.182664,  0] ../../lib/param/loadparm.c:1609(set_variable_helper)
 5月 01 00:35:30 localhost.localdomain smbd[6692]:   set_variable_helper(What): value is not boolean!
 5月 01 00:36:42 localhost.localdomain smbd[6692]: [2023/05/01 00:36:42.329538,  0] ../../lib/param/loadparm.c:1609(set_variable_helper)
 5月 01 00:36:42 localhost.localdomain smbd[6692]:   set_variable_helper(What): value is not boolean!

[root@localhost ~]# journalctl -u smb -p 6
-- Logs begin at 日 2023-04-30 11:33:16 JST, end at 月 2023-05-01 00:40:01 JST. --
 4月 30 11:52:07 localhost.localdomain systemd[1]: Starting Samba SMB Daemon...
 4月 30 11:52:07 localhost.localdomain smbd[1652]: [2023/04/30 11:52:07.928019,  0] ../../lib/util/become_daemon.c:136(daemon_ready)
 4月 30 11:52:07 localhost.localdomain systemd[1]: Started Samba SMB Daemon.
 4月 30 11:52:07 localhost.localdomain smbd[1652]:   daemon_ready: daemon 'smbd' finished starting up and ready to serve connections
 4月 30 23:53:52 localhost.localdomain systemd[1]: Starting Samba SMB Daemon...
 4月 30 23:53:52 localhost.localdomain smbd[6692]: [2023/04/30 23:53:52.282986,  0] ../../lib/util/become_daemon.c:136(daemon_ready)
 4月 30 23:53:52 localhost.localdomain systemd[1]: Started Samba SMB Daemon.
 4月 30 23:53:52 localhost.localdomain smbd[6692]:   daemon_ready: daemon 'smbd' finished starting up and ready to serve connections
 5月 01 00:34:14 localhost.localdomain smbd[6692]: [2023/05/01 00:34:14.947783,  0] ../../lib/param/loadparm.c:1609(set_variable_helper)
 5月 01 00:34:14 localhost.localdomain smbd[6692]:   set_variable_helper(What): value is not boolean!
 5月 01 00:35:30 localhost.localdomain smbd[6692]: [2023/05/01 00:35:30.182664,  0] ../../lib/param/loadparm.c:1609(set_variable_helper)
 5月 01 00:35:30 localhost.localdomain smbd[6692]:   set_variable_helper(What): value is not boolean!
 5月 01 00:36:42 localhost.localdomain smbd[6692]: [2023/05/01 00:36:42.329538,  0] ../../lib/param/loadparm.c:1609(set_variable_helper)
 5月 01 00:36:42 localhost.localdomain smbd[6692]:   set_variable_helper(What): value is not boolean!

そして、カーネルログの表示です。
こちらは、dmesgコマンドで出力される内容と類似しています。

[root@localhost ~]# journalctl -k
-- Logs begin at 日 2023-04-30 11:33:16 JST, end at 月 2023-05-01 00:40:01 JST. --
 4月 30 11:33:16 localhost.localdomain kernel: Initializing cgroup subsys cpuset
 4月 30 11:33:16 localhost.localdomain kernel: Initializing cgroup subsys cpu
 4月 30 11:33:16 localhost.localdomain kernel: Initializing cgroup subsys cpuacct
 4月 30 11:33:16 localhost.localdomain kernel: Linux version 3.10.0-1160.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Re
 4月 30 11:33:16 localhost.localdomain kernel: Command line: BOOT_IMAGE=/vmlinuz-3.10.0-1160.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto
 4月 30 11:33:16 localhost.localdomain kernel: e820: BIOS-provided physical RAM map:
 4月 30 11:33:16 localhost.localdomain kernel: BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable
 4月 30 11:33:16 localhost.localdomain kernel: BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] reserved
 4月 30 11:33:16 localhost.localdomain kernel: BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved
 4月 30 11:33:16 localhost.localdomain kernel: BIOS-e820: [mem 0x0000000000100000-0x000000003ffeffff] usable
 4月 30 11:33:16 localhost.localdomain kernel: BIOS-e820: [mem 0x000000003fff0000-0x000000003fffffff] ACPI data
 4月 30 11:33:16 localhost.localdomain kernel: BIOS-e820: [mem 0x00000000fec00000-0x00000000fec00fff] reserved
 4月 30 11:33:16 localhost.localdomain kernel: BIOS-e820: [mem 0x00000000fee00000-0x00000000fee00fff] reserved
 4月 30 11:33:16 localhost.localdomain kernel: BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] reserved
 4月 30 11:33:16 localhost.localdomain kernel: NX (Execute Disable) protection: active

systemdのジャーナルは、デフォルトでは"/run/log/journal"ディレクトリに保存されます。
/runディレクトリ以下のデータはシステム起動時に都度生成されるため、再起動後には前回起動時のログデータは残りませんが、
設定を変更することで"/var/log/journal"ディレクトリに永続的な保存が可能です。

設定変更の例
※systemd-journaldプロセスの再起動(systemctl restart systemd-journald)後に有効になります。

[root@localhost ~]# cat /etc/systemd/journald.conf 
[Journal]
#Storage=auto
Storage=persistent
#SystemMaxUse=
SystemMaxUse=1G

なお、journalctlの詳細は以下で確認できます。

https://man.archlinux.org/man/journalctl.1.en


例題作成者

鯨井 貴博(LinuCエヴァンジェリスト/登録インストラクター、LPI-Japanアカデミック認定校 ゼウスITトレーニングセンター)

ページトップへ