GNU/Linux >> Linux の 問題 >  >> Linux

Systemctlを使用してサービスを管理する

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 servicesystemctlでこの名前の例を使用する 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 は、サービス管理のための主なやり取りの方法です。


Linux
  1. systemctlを使用して複数のサービスインスタンスを管理する

  2. LinuxでSystemctlを使用してSystemdサービスを管理する方法

  3. systemd サービスを削除する方法

  1. Systemctlコマンドを使用してSystemdサービスを管理する方法

  2. systemctlコマンドを使用してLinuxサービスを管理する方法

  3. 基本サービスコマンド

  1. Linuxで実行中のサービスを確認する

  2. systemctl:コマンドが見つかりません

  3. Linux での systemctl コマンドの例