プロセス制御システム(systemd)Unitファイル
プロセス制御システム(systemd)は、以下の4部に分けて解説しています。
- プロセス制御システム(systemd)概要と操作
- プロセス制御システム(systemd)ターゲット
- プロセス制御システム(systemd)Unitファイル
- プロセス制御システム(systemd)サービスの起動と停止
Unitファイル
Unitファイルは、systemdが管理するシステムおよびサービスの構成を定義するファイルです。各Unitファイルは特定の機能やサービスを管理し、その動作や依存関係を記述します。Unitファイルは通常、以下のディレクトリに格納されています。
/etc/systemd/system/
:ユーザーがカスタム設定を定義する場所。/usr/lib/systemd/system/
:システム全体のデフォルト設定を定義する場所。
Unitファイルの構成
Unitファイルは主に以下のセクションで構成されています。
- [Unit]:ユニットの説明や依存関係を記述。
- [Service]:サービスユニットの場合、実行するコマンドや設定を記述。
- [Install]:インストール情報を記述し、ターゲットへの関連付けを行う。
multi-user.targetの確認
「/usr/lib/systemd/system/multi-user.target
」ファイルには、マルチユーザーモードで必要なサービスと依存関係が定義されています。このファイルを直接変更することはありませんが、その内容を確認することはシステム管理において重要です。
/usr/lib/systemd/system/multi-user.targetファイルの内容
user01@ubuntu-vm:~$ cat /usr/lib/systemd/system/multi-user.target
# SPDX-License-Identifier: LGPL-2.1-or-later
#
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
[Unit]
Description=Multi-User System
Documentation=man:systemd.special(7)
Requires=basic.target
Conflicts=rescue.service rescue.target
After=basic.target rescue.service rescue.target
AllowIsolate=yes
各キーの内容
キー | 値 | 説明 |
---|---|---|
Description | Multi-User System | マルチユーザーモードの説明 |
Documentation | man:systemd.special(7) | ドキュメントの参照 |
Requires | basic.target | このターゲットが必要とするユニット |
Conflicts | rescue.target | 競合するユニット |
After | After=basic.target rescue.service rescue.target | 自Unit起動前に起動可能なユニット |
AllowIsolate | yes | systemctl isolateのターゲットとして指定が可能 |
各種ターゲットで起動するサービス
各ターゲットで起動するサービスは、「/etc/systemd/system
」ディレクトリ内の「ターゲット名.wants
」ディレクトリに格納されています。ここにある「~.service
ファイルは、起動するサービスを示しています。「~
」の部分はサービス名を表しています。
multi-user.targetで起動するサービス
user01@ubuntu-vm:~$ ls /etc/systemd/system/multi-user.target.wants/
ModemManager.service
NetworkManager.service
anacron.service
avahi-daemon.service
console-setup.service
cron.service
cups-browsed.service
cups.path
cups.service
(省略)
出力結果の例と説明
サービス名 | 説明 |
---|---|
crond.service | Cronデーモンの起動 |
cups.service | CUPS印刷サービスの起動 |
まとめ
systemdのUnitファイルは、システムおよびサービスの構成と管理に不可欠な要素です。multi-user.target
ファイルはマルチユーザーモードに必要なサービスと依存関係を定義しており、各ターゲットで起動するサービスはターゲット名.wants
ディレクトリ内で確認できます。systemdのターゲットとサービスの管理を理解することで、効率的なシステム管理が可能となります。
ファイル | 説明 |
---|---|
/usr/lib/systemd/system/multi-user.target | マルチユーザーモードの設定ファイル。依存関係や競合を定義。 |
/etc/systemd/system/multi-user.target.wants/ | マルチユーザーモードで起動するサービスを定義するディレクトリ。 |