2025年03月18日

systemdのtargetについて

museums-victoria-VLg5MhJLTds-unsplash.jpg

質問

systemdのtargetについて解説してください。


解答

**systemdのtarget**とは、Linuxシステムの起動時や特定の動作モードで、
サービスやリソースの組み合わせを管理するためのsystemdのユニットです。

旧来のSysV initで使用されていた**ランレベル**の概念に相当し、特定のグループ化された状態(ターゲット)を表現します。
systemdはサービス起動の依存関係を管理するため、各targetが必要なサービスやリソースを柔軟に組み合わせて起動できます。


### targetの役割と目的

targetは、システムの異なる動作モードを定義し、指定された目的に応じたサービスやリソースのグループをまとめるために使用されます。
たとえば、シングルユーザーモードやグラフィカルなユーザーインターフェース(GUI)を提供するためのマルチユーザーモードを構成します。


### よく使われる主要なtarget

1. **`default.target`**

デフォルトのターゲットで、システム起動時に読み込まれるtargetです。
通常は`graphical.target`または`multi

user.target`へのシンボリックリンクとして設定され、システムの起動モードを制御します。


2. **`graphical.target`**

グラフィカルユーザーインターフェース(GUI)を含むマルチユーザーモード。
GUIデスクトップ環境が有効な場合に使われます。
`multi user.target`の機能も含んでいます。


3. **`multi user.target`**

CLIベースのマルチユーザーモード。
ネットワークや他のシステムサービスが起動し、複数のユーザーがCLIで利用できる状態にするモードです。
SysV initの「ランレベル3」に相当します。


4. **`rescue.target`**

システムの修復モード(レスキューモード)で、最小限のサービスとrootアクセスだけが許可された状態。
シングルユーザーモードに相当し、トラブルシューティングやシステム修復に使われます。


5. **`emergency.target`**

レスキューモードよりもさらに制限された状態で起動するターゲット。
ほぼすべてのサービスが停止している状態で、ルートシェルを提供し、システムの基本的なトラブルシューティングができる環境です。


6. **`poweroff.target`**

システムをシャットダウンして電源をオフにします。
SysV initの「ランレベル0」に相当します。


7. **`reboot.target`**

システムを再起動するためのターゲット。
SysV initの「ランレベル6」に相当します。


### targetと依存関係

targetには他のtargetやサービスへの依存関係があり、必要なサービスが順次起動されます。
たとえば、`graphical.target`は`multi user.target`を依存先に持つため、グラフィカル環境が起動する前にマルチユーザーモードのサービスも起動します。


### まとめ

systemdのtargetは、システムの起動モードや特定の状態をまとめるためのユニットで、従来のランレベルに相当します。
特定のtargetで依存関係を管理しつつ、柔軟なサービス構成とモード切替が可能になります。




systemdの思想と機能 Linuxを支えるシステム管理のためのソフトウェアスイート/森若和雄【1000円以上送料無料】

価格:3080円
(2025/1/3 18:39時点)
感想(0件)


ITエンジニア1年生のためのまんがでわかるLinux シェルスクリプト&コマンド効率アップ編【電子書籍】[ Piro ]

価格:2420円
(2024/11/2 11:49時点)
感想(0件)


 



ブログランキング・にほんブログ村へ
【下記、広告です。クリックいただけると励みになります。】
posted by モニー at 08:00| Comment(0) | Linux | このブログの読者になる | 更新情報をチェックする