LinuCレベル2 201試験の例題と解説
2.03.3ネットワークの問題解決
LinuCレベル2 201試験の出題範囲から「2.03.3 ネットワークの問題解決」についての例題を解いてみます。
このテーマは、ネットワークの問題解決に関する内容が含まれます。設定内容・状態の把握だけでなく、ログの確認など特にトラブルシュートに役に立つ内容が含まれるのでしっかりと理解しておきましょう。
例題
systemdのジャーナル(ログ)を確認したい。
systemd unitとしてsmbを指定するためのオプションとして、空欄に入るものはどれか。
journalctl ( ) smb
- -k
- -p
- -u
- -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トレーニングセンター)