/etc/systemd 内の systemd 設定を調べる
前のステップでは、systemctl
コマンドを使用して systemd
とやり取りしました。今度は、systemd
が設定ファイルを保存している場所を見てみましょう。
systemd
の設定ファイルの主要なディレクトリは /etc/systemd
です。このディレクトリには、さまざまな種類のユニットファイルと設定のサブディレクトリが含まれています。
ls
コマンドを使用して /etc/systemd
ディレクトリの内容を一覧表示しましょう。 /etc
は Linux で設定ファイルを格納する標準的なディレクトリです。
ターミナルに次のコマンドを入力し、Enter キーを押します。
ls /etc/systemd/
次のようなディレクトリとファイルの一覧が表示されます。
journald.conf logind.conf networkd.conf resolved.conf system system.conf timesyncd.conf user user.conf
ここで最も重要なサブディレクトリは /etc/systemd/system
です。ここにはシステム全体のユニットファイルが配置されるか、リンクが張られることが多いです。このディレクトリの中身を見てみましょう。
cd
コマンドを使用して現在のディレクトリを /etc/systemd/system
に変更します。
cd /etc/systemd/system
次に、このディレクトリの内容を一覧表示します。
ls
ファイルとディレクトリの一覧が表示され、その多くは他の場所(多くの場合 /lib/systemd/system
)にある実際のユニットファイルを指すシンボリックリンク (->
) です。これがサービスを有効または無効にする方法です – これらのシンボリックリンクを作成または削除することです。
たとえば、次のようなものが表示されるかもしれません。
multi-user.target.wants -> /lib/systemd/system/multi-user.target.wants
sockets.target.wants -> /lib/systemd/system/sockets.target.wants
...
.wants
ディレクトリには、そのターゲットに到達したときに起動すべきサービスへのシンボリックリンクが含まれています。たとえば、multi-user.target.wants
には、システムがマルチユーザー状態(起動後など)にあるときに実行すべきサービスへのリンクが含まれています。
multi-user.target.wants
ディレクトリの中身を見てみましょう。
ls multi-user.target.wants/
マルチユーザーターゲットで起動するように有効になっているサービスの一覧が表示されます。
anacron.service -> ../anacron.service
apache2.service -> ../../apache2.service
...
これは、apache2.service
がここにリンクされていることを示しており、マルチユーザーターゲットで起動するように有効になっていることを意味します。
/etc/systemd/system
ディレクトリを調べることで、systemd
がシステム上のサービスをどのように整理し、管理しているかを理解するのに役立ちます。
Continue をクリックしてこの実験を終了します。