Ubuntuでsystemdサービスの状態を確認する方法
- 作成日 2026.06.05
- ubuntu
Ubuntuではsystemdがサービス管理を担当しています。Webサーバーやデータベース、cronなどのサービスが正常に動作しているか確認する際は、systemctlコマンドを利用します。本記事では、systemdサービスの状態確認やログ確認、起動設定の確認方法を詳しく解説します。
systemdとは
systemdはLinuxの初期化システムおよびサービス管理システムです。
Ubuntuでは多くのサービスがsystemdによって管理されています。
代表例
・Apache
・Nginx
・MySQL
・MariaDB
・cron
・Docker
サービスの起動、停止、再起動、状態確認などを統一的に管理できます。
サービスの状態を確認する
特定のサービスの状態を確認するには以下を実行します。
systemctl status サービス名例
systemctl status nginx実行例
● nginx.service - A high performance web server
Loaded: loaded
Active: active (running)重要な確認ポイント
・loaded:サービス定義が読み込まれている
・active (running):正常稼働中
・inactive:停止中
・failed:異常終了
サービスが起動しているかだけ確認する
スクリプトなどで利用する場合はis-activeが便利です。
systemctl is-active nginx結果
active停止中の場合
inactive異常時
failedシンプルに状態を取得できます。
自動起動設定を確認する
OS起動時にサービスが自動起動するか確認します。
systemctl is-enabled nginx結果例
enabledその他の状態
・enabled
・disabled
・static
・masked
disabledの場合は自動起動しません。
すべてのサービス一覧を表示する
systemdで管理されているサービスを確認します。
実行中サービスのみ表示
systemctl list-units --type=service
すべてのサービスを表示
systemctl list-unit-files --type=serviceインストール済みサービスの確認に便利です。
失敗しているサービスを確認する
異常終了しているサービスのみ表示できます。
systemctl --failed例
UNIT LOAD ACTIVE SUB DESCRIPTION
nginx.service loaded failed failed Nginx Web Serverトラブルシューティング時によく利用されます。
サービスログを確認する
systemd管理サービスのログはjournalctlで確認できます。
例
journalctl -u nginx最新ログのみ表示
journalctl -u nginx -n 50リアルタイム監視
journalctl -u nginx -fサービスエラーの調査に非常に役立ちます。
サービスを再起動する
設定変更後などは再起動が必要です。
sudo systemctl restart nginx状態確認
systemctl status nginx正常に再起動できたか確認します。
サービスの起動と停止
サービス起動
sudo systemctl start nginxサービス停止
sudo systemctl stop nginx現在の状態確認
systemctl status nginx運用中によく使用する基本コマンドです。
サービスの自動起動を設定する
自動起動を有効化
sudo systemctl enable nginx無効化
sudo systemctl disable nginx設定確認
systemctl is-enabled nginxサーバー再起動後もサービスを維持したい場合に必要です。
サービス定義ファイルを確認する
systemdの設定内容を確認します。
systemctl cat nginx実行例
[Unit]
Description=Nginx Web Server
[Service]
ExecStart=/usr/sbin/nginx起動コマンドや依存関係を確認できます。
まとめ
Ubuntuでsystemdサービスの状態を確認する場合は、まず「systemctl status サービス名」を実行するのが基本です。より簡潔な確認には「systemctl is-active」、自動起動設定には「systemctl is-enabled」を利用します。
また、サービスに問題が発生した場合は「systemctl –failed」や「journalctl -u サービス名」を活用することで原因調査が容易になります。日常的なサーバー運用では、これらのコマンドを覚えておくことでトラブル対応を迅速に行えるようになります。
-
前の記事
Ubuntuで不要ログを削除して容量を確保する方法 2026.06.04
-
次の記事
UbuntuでDockerログ肥大化を防ぐ方法 2026.06.05
コメントを書く