この記事では、Ubuntu 20.04でのサービスの開始、停止、および再起動について説明します。これにより、より詳細に制御できるため、これがどのように機能するかを知っておく必要があります。しかし、まず最初に、サービスとは何ですか?サービスは、OSの起動時に実行され、シャットダウン時に終了するバックグラウンドプロセスです。
systemdを使用したUbuntuでのサービスの管理
Systemdはシステム管理デーモンであり、デーモンに関連するすべてのライブラリ、パッケージ、およびユーティリティを指します。
すべてのサービスの表示
サービスの開始、停止、または再起動を開始する前に、システムで使用可能なサービスを知っておく必要があります。次を使用して、システムで利用可能なすべてのサービスのリストを表示できます。
systemctl list-unit-files --type service –all
下の画像のようにサービスを表示できます:
サービスの状態は、有効、無効、静的、マスク、または生成できます。
実行中のサービスを表示
実行中のサービスを表示するには、次を使用します:
sudo systemctl | grep running
このコマンドの結果は、以下に示すように、実行中のサービスのリストです。
サービスを開始する
以下のコマンドを使用して、サービスを開始します。
systemctl start {service-name}
サービスを停止する
以下のコマンドを使用して、サービスを停止します。
systemctl stop {service-name}
サービスを再開する
以下のコマンドを使用して、サービスを再起動します。
systemctl restart {service-name}
サービスのステータス
以下のコマンドを使用して、サービスのステータスを表示します。
systemctl status {service-name}
サービスを使用したUbuntuでのサービスの管理
サービスは、さまざまなバイナリにリダイレクトする高レベルのコマンドです。 systemdに比べて高度ではなく、initの一部です。
すべてのサービスの表示
システムと比較して、サービスコマンドははるかに簡単です。使用されているすべてのサービスを表示するには、
service --status-all
下の画像のようにサービスを表示できます:
それらの表示方法は異なります。 [+] サービスが有効であり、 [–]であることを意味します 無効を意味します。
サービスを開始する
以下のコマンドを使用して、サービスを開始します。
service {service-name} start
サービスを停止する
以下のコマンドを使用して、サービスを停止します。
service {service-name} stop
サービスを再開する
以下のコマンドを使用して、サービスを再起動します。
service {service-name} restart
サービスのステータス
以下のコマンドを使用して、サービスのステータスを表示します。
service {service-name} status
initを使用したUbuntuでのサービスの管理
サービスのinitスクリプトは、ディレクトリ/etc/init.d/にロードされます。 Initは初期化の略で、コンピューターの起動時に開始し、コンピューターのシャットダウン時に終了するデーモンプロセスです。 initが開始されない場合、プロセスは開始されず、システムはカーネルパニックステージに到達します。計算のオーバーヘッドを削減するsystemdに置き換えられました。
サービスを開始する
以下のコマンドを使用して、サービスを開始します。
/etc/init.d/{service name} stop
サービスを停止する
以下のコマンドを使用して、サービスを停止します。
/etc/init.d/{service name} stop
サービスを再開する
以下のコマンドを使用して、サービスを再起動します。
/etc/init.d/{service name} restart
サービスのステータス
次のコマンドを使用して、サービスのステータスを表示します。
/etc/init.d/{service name} status
これが、Ubuntu 20.04でサービスを停止、開始、または再起動する方法です。