以下のRHEL8,9のsystemctlコマンドの詳細に関する記事を参考に、systemctlコマンドの使い方をまとめました。
13.2. systemctl によるシステムサービス管理 | Red Hat Product Documentation
13.2. systemctl によるシステムサービス管理 | Red Hat Documentation
12.2. systemctl によるシステムサービス管理 | Red Hat Product Documentation
12.2. systemctl によるシステムサービス管理 | Red Hat Documentation
サービスを操作する
systemctlはサービスの状態確認、停止起動などが可能です。
コマンド | 機能説明 |
systemctl status サービス名 | サービスの状態を確認します。 |
systemctl start サービス名 | サービスを起動します。 |
systemctl restart サービス名 | サービスを再起動します。 |
systemctl reload サービス名 | サービスの設定を再読み込みします。 |
systemctl stop サービス名 | サービスを停止します。 |
systemctl reset-failed サービス名 | Active 行が failed から inactive に変わります。 |
systemctl is-active サービス名 | 特定のサービスユニットが実行中であることを確認します。 |
systemctl enable サービス名 | OS起動時にサービスを自動起動します。 |
systemctl is-enabled サービス名 | OS起動時に自動起動するサービスの一覧を表示します。 |
systemctl disable サービス名 | OS起動時にサービスが自動起動しないようにします。 |
systemctl list-units -t service systemctl list-units –type service –all | –all または -a コマンドラインオプションを指定して次のコマンドを使用し、ロードされたすべてのユニットを状態に関係なく をリスト表示します。 |
systemctl list-unit-files -t service systemctl list-unit-files –type service | サービス自動起動設定を利用可能なすべてのサービスユニットのステータス (enabled または disabled) をリスト表示します。 |
systemctl daemon-reload | systemd マネージャーの設定ファイルを再読み込みします。 |
systemctl daemon-reexec | systemd マネージャーを再実行します。 |
systemd のユニットファイルの場所
systemd のユニットファイルの場所(RHEL8)は以下です。
ディレクトリー 説明 /usr/lib/systemd/system/
インストール済みの RPM パッケージで配布された systemd
のユニットファイル。/run/systemd/system/
ランタイム時に作成された systemd
ユニットファイル。このディレクトリーは、インストール済みのサービスのユニットファイルのディレクトリーよりも優先されます。/etc/systemd/system/
systemctl enable
コマンドを使用して作成されたsystemd
ユニットファイルと、サービスを拡張するために追加されたユニットファイル。このディレクトリーは、runtime のユニットファイルのディレクトリーよりも優先されます。
daemon-reload と daemon-reexec の違い
daemon-reload と daemon-reexecの違いは以下のRHEL公式サイトに記載されています。
daemon-reload はsystemd マネージャーの設定を再読み込みすることを意味しますが、 daemon-reexec はsystemd マネージャーを再実行することを意味します。詳細については、systemctl のマニュアル ページを参照してください。

Red Hat Customer Portal
Access Red Hat’s knowledge, guidance, and support through your subscription.
# man systemctl
daemon-reload
Reload the systemd manager configuration. This will rerun all generators (see systemd.generator(7)), reload all unit files, and recreate the entire dependency tree. While the daemon is being reloaded, all sockets systemd listens on behalf of user configuration will stay accessible.
systemd マネージャー構成をリロードします。これにより、すべてのジェネレーター (systemd.generator(7) を参照) が再実行され、すべてのユニット ファイルが再ロードされ、
依存関係ツリー全体を再作成します。デーモンがリロードされている間、systemd がユーザー設定に代わってリッスンするすべてのソケットはアクセス可能なままになります。
This command should not be confused with the reload command.
このコマンドを reload コマンドと混同しないでください。
daemon-reexec
Reexecute the systemd manager. This will serialize the manager state, reexecute the process and deserialize the state again. This command is of little use except for debugging and package upgrades. Sometimes, it might be helpful as a heavy-weight daemon-reload. While the daemon is being reexecuted, all sockets systemd listening on behalf of user configuration will stay accessible.
systemdマネージャーを再実行します。これにより、マネージャーの状態がシリアル化され、プロセスが再実行され、状態が再び逆シリアル化されます。このコマンドは、デバッグとパッケージのアップグレード以外にはほとんど役に立ちません。場合によっては、重量のあるデーモンのリロードとして役立つ場合があります。デーモンが再実行されている間、ユーザー設定をリッスンしているすべてのソケット systemd はアクセス可能な状態を維持します。
/etc/systemd/system.confに設定が記載されています。
※以下はRHEL8の記事です。
第13章 systemd の管理 | Red Hat Product Documentation
第13章 systemd の管理 | Red Hat Documentation
コマンドの詳細を確認する
manコマンドでsystemctlの詳細を確認することができます。
systemctlのより詳細な情報はLinuxで以下のコマンドを実行して確認しましょう。
# man systemctl
# man systemd