Systemctlとは ?
Systemctl systemd initを制御するための中央管理ツールです。 システム。そのため、このコマンドを最も頻繁に使用して、systemdを操作します。 システム。ほとんどのLinux®ディストリビューションはsystemdを使用しています astheir init システムなので、systemctlの使用に慣れておくと役立ちます Linuxシステムで実行されているサービスを管理するときに機能します。
次の例は、systemctlを使用するための基本的なコマンドテンプレートを示しています。 コマンド:
systemctl (command) (service)
これは、serviceコマンドが service(service)(command)を使用するのとは異なります。 format。service httpd reload to reload the Apache service 。 systemctlでこの名前の例を使用する formatの場合、コマンドは次の例のようになります。
CentOS®ベースまたはRedHat®EnterpriseLinux®ベースのシステム:
systemctl reload httpd
Ubuntuオペレーティングシステム:
systemctl reload apache2
注: .serviceを含める必要はありません 管理するサービスの名前の後に。Systemctlは、サービス管理コマンドを使用するときにサービスを操作しようとしていることを認識できるほど賢いです。
以下は、特定の一般的なsystemctlです。 コマンド:
- 開始 :現在実行されていないサービスを開始します
- 停止 :現在実行中のサービスを停止します
- 再起動 :現在実行中のサービスを再起動します
- リロード :現在実行中のサービスのソフトリスタートを実行します
- 有効にする :システムが再起動するたびにサービスが自動的に開始されるようにする
- 無効にする :システムの再起動時にサービスが自動的に開始されないようにする
- ステータス :システム上のサービスの現在のステータスを確認してください
注 :reload オプションが常に利用できるとは限りません。 reload-or-restartを使用できます 代わりに、reloadがわからない場合 可用性。 reload-or-restartの使用 reloadの使用を試みます 最初に、restartを使用します reloadの場合 利用できません。
以下は、あまり一般的ではないオプションです。
- アクティブ :ユニットが現在アクティブ(実行中)かどうかを確認します
- 有効 :サービスが有効か無効かを確認します
- 失敗しました :サービスが失敗しているかどうかを確認します 状態
- リストユニット :
systemdのすべてのユニットを確認してください 現在、システム上でアクティブであると見なされています
list-units オプションは、次の列を持つテーブルを表示します:
- ユニット :systemdユニット(またはサービス)名
- ロード :現在systemdにロードされているサービス
- アクティブ :サービスが現在アクティブかどうかの概要
- SUB :サービスの現在の状態についてもう少し詳しく説明します
- 説明 :サービスとは何か、または何をするかについての簡単な説明
--allを追加する list-unitsへの引数 systemctl コマンドには、systemdであるすべてのサービスが含まれます 次の例に示すように、システムの現在の状態に関係なく、ロードされたか、ロードを試みました。
systemctl list-units --all
list-unitsを使用できます コマンドは、--state=の追加など、いくつかの追加の方法で使用できます。 次の例に示すように、フィルター:
systemctl list-units --all --state=(filter)
通常、このオプションを使用して、サービスの現在の状態(active)で結果をフィルタリングします またはinactive 、次の例に示すように:
systemctl list-units --all --state=inactive
次の引数を追加することで、結果をさらにフィルタリングできます。
systemctl list-units --type=(filter)
このオプションは、systemctlに通知します 指定したタイプのサービスのみを一覧表示します。たとえば、(filter)を置き換えます with (service) 上記のコマンドでは、アクティブなサービスユニットのみが一覧表示されます。
同様に、コマンドsystemctl list-units-filesを使用できます。 systemd内の利用可能なすべてのユニットファイルを一覧表示します systemdを含むパス ロードを試みていません。
手動または自動でサービスが開始されないようにする必要がある場合は、maskを使用できます。 systemctlを使用したコマンド たとえば、Apache®が実行されないことを確認したいとします。 rootとして実行していない場合は、sudoを配置する必要があります コマンドの前にあるコマンド。それ以外の場合、コマンドは次の例のようになります。
systemctl mask httpd.service
または
systemctl mask apache2.service
サービスのマークを解除する場合は、前のmaskを置き換えます unmaskを使用 、サービスを再開できます。
systemctlのより高度な使用法がありますが ユーティリティ、これらは最も頻繁に使用する使用オプションです。これで、systemctlの最も一般的な使用法に精通しました。 systemdとやり取りするとき 。 Systemctl は、サービス管理のための主なやり取りの方法です。