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

202.1システムの起動をカスタマイズする

今回は201試験の試験範囲から「202.1 システムの起動をカスタマイズする」についての例題を解いてみます。
ここではSystemdを採用しているシステムについて、試験範囲を確認しておきましょう。

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


例題

Systemdを採用しているシステムでhttpdサービスの状態を確認したところ、以下のように出力された。

● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: active (running) since 月 2019-06-24 10:49:18 JST; 1 weeks 2 days ago
     Docs: man:httpd(8)
           man:apachectl(8)
  Process: 17909 ExecReload=/usr/sbin/httpd $OPTIONS -k graceful (code=exited, status=0/SUCCESS)
 Main PID: 30198 (httpd)
   Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"
   CGroup: /system.slice/httpd.service
           tq17926 /usr/sbin/httpd -DFOREGROUND
           tq17927 /usr/sbin/httpd -DFOREGROUND
           tq17928 /usr/sbin/httpd -DFOREGROUND
           tq17929 /usr/sbin/httpd -DFOREGROUND
           tq17930 /usr/sbin/httpd -DFOREGROUND
           mq30198 /usr/sbin/httpd -DFOREGROUND

 6月 24 10:49:18 test systemd[1]: Starting The Apache HTTP Server...
 6月 24 10:49:18 test systemd[1]: Started The Apache HTTP Server.
 6月 30 03:26:01 test systemd[1]: Reloading The Apache HTTP Server.
 6月 30 03:26:01 test systemd[1]: Reloaded The Apache HTTP Server.

上記のように、httpdサービスの状態を確認するためのコマンドを一つ選択してください。

  1. systemctl status httpd.service
  2. systemctl start httpd.service
  3. systemctl is-enabled httpd.service
  4. systemctl enable httpd.service

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


解答と解説

正解は「1. systemctl status httpd.service」です。

systemctlコマンドは、Systemdを採用しているシステムのサービスを管理できるコマンドです。

systemctlコマンドのサービスに関する主な使い方は以下の通りです。

systemctl start XXX.service : サービスの起動
systemctl stop XXX.service : サービスの停止
systemctl reload XXX.service : サービスの再読み込み
systemctl restart XXX.service : サービスの再起動
systemctl status XXX.service : サービスの状態を確認
systemctl is-active XXX.service : サービスが実行中か確認
systemctl enable XXX.service : サービスの自動起動を有効化
systemctl disable XXX.service : サービスの自動起動を無効化
systemctl is-enabled XXX.service : サービスの自動起動設定を表示

このうち、サービスの状態が確認できるのは「systemctl status XXX.service」です。
よって、「1. systemctl status httpd.service」が正解となります。

サービスが実行中かどうかのみ確認したい場合は「systemctl is-active XXX.service」を使用します。
「systemctl is-active XXX.service」を使用した場合、以下のように出力されます。

# systemctl is-active httpd.service
active

その他の選択肢の解説は以下の通りです。

[2. systemctl start httpd.service]
これは、httpd.serviceを起動するコマンドです。

[3. systemctl is-enabled httpd.service]
これは、httpd.serviceの自動起動設定の状態を表示するためのコマンドです。
自動起動が無効の場合、以下のように出力されます。

# systemctl is-enabled httpd.service
disabled

[4. systemctl enable httpd.service]
これは、httpd.serviceの自動起動を有効化するためのコマンドです。
自動起動を無効から有効にした場合、以下のように出力されます。

# systemctl enable httpd.service
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.

sysytemctlコマンドは、サービスの開始や停止・確認以外にも、デフォルトターゲットの確認や設定などを行うことができます。
Systemdを採用しているシステムの管理をスムーズに行うためにも、利用方法を把握しておきましょう。


例題作成者

株式会社デージーネット OSS研究室 橋本 知里

ページトップへ