Linux システム サービスを表示する 5 つの方法

Linux システム サービス (デーモンとも呼ばれます) は、Linux の起動時に自動的にロードされ、Linux の終了時に停止されるシステム タスクです。

この記事では、Linux システムで実行中のすべてのサービスを一覧表示する方法と、サービスの現在のステータスを確認する方法を説明します。

Centos/RHEL 7.X の systemd システム サービス ビュー

CentOS 7.x 以降、CentOS はデーモンの代わりに systemd サービスを使用し始め、システムの起動および管理システム サービスに関連するすべてのコマンドは systemctl コマンドに置き換えられました。

systemctl list-unit-files

コマンドの出力は次のとおりです。
ここに画像の説明を挿入

実行中のすべての systemd サービスを表示するには、次のコマンドを実行します。

systemctl | more

それ以外に、次のコマンドも使用できます。

systemctl list-units --type service

結果で特定のサービスを検索する場合は、パイプと grep コマンドを使用できます。

systemctl | grep "apache2"

netstat コマンドを使用してシステム サービスを表示する

netstat コマンドは、アクティブなネットワーク接続、インターフェイス統計分析、およびルーティング テーブルのステータスを確認するために使用されます。このコマンドはすべての Linux ディストリビューションで使用でき、次にシステム サービスを表示するために使用します。

サービスとそのサービスがリッスンするポートを表示します。

netstat -pnltu

ここに画像の説明を挿入

システム サービス構成ファイルを通じてシステム サービスを表示する

サービス構成ファイルは /etc/services です。これは、ユーザー プログラムが使用する一連のサービスを含む ASCII ファイルです。このファイルには、サービス名、ポート番号、使用されるプロトコル、およびいくつかのエイリアスが含まれています。

このファイルについては、vim などのテキスト ツールを使用して表示できます。

vim /etc/services

systemd サービスのステータスを表示する

Linux システムの一部の新しいバージョンでは、init プロセスの代わりに systemd が使用されています。このようなシステムにおいて、システムサービスを確認するにはどうすればよいでしょうか? 次の構文を使用できます。

systemctl status service_name

たとえば、システム上で OpenSSH が実行されているかどうかを確認するには、次のコマンドを実行します。

systemctl status sshd

あるいは、次のコマンド形式を使用して、サービスが実行されているかどうかを確認することもできます。

systemctl is-active service_name

このコマンドを使用する場合、上記の例に対応するコマンドは次のとおりです。

systemctl is-active sshd

ここに画像の説明を挿入

同時に、次のコマンドを使用して、サービスが有効になっているかどうかを確認することもできます。

systemctl is-enabled service_name

たとえば、OpenSSH サービスが有効になっているかどうかを確認するには、次のコマンドを入力します。

systemctl is-enabled sshd

ここに画像の説明を挿入

以前のバージョンのサービス ステータス ビュー

実際のところ、初期の頃はそうは言えず、現在でもそのようなシステムは数多く存在しており、それらのシステム上で SysV init プロセスが実行されています。このシステムの場合、サービスのステータスを表示するコマンドは次のとおりです。

service service_name status

OpenSSH のステータスを確認する例として、対応するコマンドは次のとおりです。

service sshd status

ここに画像の説明を挿入

次のコマンドを使用して、すべてのサービスのステータスを表示することもできます。

chkconfig --list

コマンドの出力は次のとおりです。
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/weixin_44388689/article/details/129883235