9月28日(月)3、4コマ目
今日のテスト
systemdに確認テストを行いました。
問1
Unit起動順に関する問題。
Unit起動順は以下の2項目があります。
| 項目 | 説明 |
|---|---|
| before |
指定ユニットの前に起動。 例 BEFORE=A B このユニットはユニットA、Bの前に起動する 言い換えれば、ユニットA、Bはこのユニットのあとに起動する |
| after |
指定ユニットの後に起動。 例 AFTER=A B このユニットはユニットA、Bの後に起動する 言い換えれば、ユニットA、Bはこのユニットのまえに起動する |
問題はUnit定義ファイルから、Unit起動後に起動するUnitを調べる問題。よって、beforeで指定されたUnitが対象。
だが、beforeは未指定なので、答えはなし。
問2
ユニットhttpd.serviceが自動起動するか確認するためのコマンド。
systemctl is-enabled httpd.service
問3
ユニットfirewalld.serviceを自動起動するように設定するためのコマンド。
systemctl enable firewalld.service
問4
systemdでマシンをシャットダウン。
起動しているターゲットの変更を行うことで、GUI付きマルチユーザーモード(graphical.target)からCUIマルチユーザーモード(multi-user.target)やシングルユーザーモード(rescue.target)に変更することができる。
systemctl isolate poweroff.target
問5
ユニットdovecot.serviceに対して、
systemctl enable dovecot.service
を行うと、このユニットは自動起動するようになる。
自動起動させるには、systemdが起動するターゲット(ユニットの集まり)に組み込めばOK。
ユニット定義ファイルを見ると、
[Install]
WantedBy = multi-user.target
とあるので、systemctl enable dovecot.serviceを行うと、multi-user.targetに組み込まれることになる。
ターゲットに組み込むと、「ターゲット名.wants」ディレクトリにこのユニット定義ファイルへのリンクが作られる。よって、
〇影響を受けるファイル、ディレクトリ
/etc/systemd/system/multi-user.target.wantsディレクトリ
〇内容
/etc/systemd/system/multi-user.target.wantsディレクトリにdovecot.serviceへのリンクが作成される。
問6
新規作成ユニットのユニット定義ファイルのパス。
/etc/systemd/system/以下の置くこと。
よって、新規作成ユニットcreateuser.serviceのユニット定義ファイルは
/etc/systemd/system/createuser.service
に作成する。
問7
ユニット起動順に関する問題。問1と同じ。
ユニット定義ファイルを見ると、ネットワークに関するターゲットnetwork.targetがafterに指定されている。
これがあることで、ユニットdovecot.serviceはnetwork.targetの後に起動することになる。
回答としては
ユニット定義ファイルにて、
After=netowork.target
と指定されているため、ネットワークを起動するnetwork.targetのあとにdovecot.targetは起動する。
問8
マシンを起動するとGUI付きマルチユーザーモード(graphical.target)で起動する理由。
マシンを起動するとsystemdはdefault.targetを起動するが、default.target自体は実体がなく、起動したいターゲットへのリンクになっている。default.targetをgraphical.targetへのリンクにすることで、マシン起動時にgraphical.targetで起動する。
問9
ユニットpostfix.service起動。
sytemctl start postfix.service
問10
ユニットpostfix.serviceが起動中か確認。
systemctl is-active postfix.service
コメント