systemctl status を使用してサービスの状態を確認する
このステップでは、systemctl
コマンドを使用してシステムサービスの状態を確認する方法を学びます。サービスは、Web サーバー、データベースサーバー、またはネットワーキングデーモンなど、システム上で実行されるバックグラウンドプログラムです。
この特定の LabEx 環境では、Docker コンテナ内で実行されているため、直接 systemctl
を使用することはできませんが、実際の Linux システムでサービスを管理するためには、その動作原理を理解することが重要です。ここではその概念をシミュレートし、一般的なコマンドの使い方を紹介します。
systemd
を使用する標準的な Linux システム(Ubuntu などの最新のディストリビューションで一般的)では、systemctl status
の後にサービス名を指定することで、サービスが実行中、アクティブ、または失敗しているかどうかを確認できます。
たとえば、安全なリモートログインを処理する ssh
サービスの状態を確認するには、通常次のコマンドを実行します。
systemctl status ssh
出力は次のようになります(正確な詳細は異なる場合があります)。
● ssh.service - OpenBSD Secure Shell server
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
Active: active (running) since ...
Docs: man:sshd(8)
man:ssh(1)
Main PID: ... (sshd)
Tasks: ... (limit: ...)
Memory: ...
CPU: ...
CGroup: /system.slice/ssh.service
└─... /usr/sbin/sshd -D
...
出力で注目すべき重要な項目は次のとおりです。
Loaded
: サービスの設定が正しく読み込まれたかを示します。
Active
: サービスの現在の状態を示します(例:active (running)
、inactive (dead)
、failed
)。
Main PID
: サービスのメインプロセスのプロセス ID です。
ここでは systemctl
を実行できませんが、他の Linux システムでサービスを管理するためには、このコマンドを知っておくことが重要です。
サービスの状態を確認することとコマンドの実行を練習するために、echo
を使用して、systemctl status
について学んだことを示すメッセージを表示しましょう。
ターミナルに次のコマンドを入力します。
echo "Learned about systemctl status"
Enter キーを押します。
このコマンドは、systemctl status
の使用概念を読み理解したことを確認するだけのものです。
続ける をクリックして次に進みます。