Fedoraをつかっていて、こんなことを思ったことはありませんか?
- このパソコンでどんなサービスが動いているのかしりたい
- SSHやWebサーバーが自動で起動しているか確認したい
- いらないサービスを止めてメモリを節約したい
- サーバーでトラブルが起きたとき、原因をさがしたい
そんなときにつかうのが「systemctl」コマンドです。
この記事では、Fedoraでサービスの一覧を確認する方法を、基本から応用まで説明します。
サービスってなに?

サービスとは、パソコンの裏で動いている常駐プログラムのことです。
例えば:
- SSH(リモート接続)
- Apache(Webサーバー)
- MySQL(データベース)
- NetworkManager(ネットワーク管理)
これらは、パソコンを起動すると自動で動きはじめたり、手動でオン・オフができたりします。
Fedoraのサービス管理は「systemd」
Fedoraは「systemd」(システムディー)というシステムでサービスを管理しています。
そのため、サービスの状態を確認したり、起動・停止するには「systemctl」コマンドをつかいます。
基本:サービス一覧を確認する方法
今動いているサービスをみる
systemctl list-units --type=service
このコマンドで、今動いているサービスが一覧で表示されます。
出力例:
sshd.service loaded active running OpenSSH server daemon
NetworkManager.service loaded active running Network Manager
firewalld.service loaded active running firewalld - dynamic firewall daemon
表示される情報:
- サービス名(例:sshd.service)
- 状態(loaded active running = 正常に動作中)
- 説明(そのサービスが何をするものか)
止まっているサービスも含めてみる
systemctl list-units --type=service --all
このコマンドで、止まっているサービス(inactive)やエラーになっているサービス(failed)もみることができます。
詳細:インストール済みのすべてのサービスをみる
systemctl list-unit-files --type=service
これで「パソコンにインストールされているすべてのサービスとその設定」がわかります。
サービスの状態の意味
状態 | 意味 |
---|---|
enabled | 起動時に自動で有効になる |
disabled | 手動で起動する必要がある |
static | 他のサービスに依存して起動する |
masked | 完全に無効化されている(安全のため) |
よくつかうsystemctlコマンド
コマンド | 説明 |
---|---|
systemctl status サービス名 | サービスの詳しい状態を確認 |
systemctl start サービス名 | 今すぐ起動 |
systemctl stop サービス名 | 今すぐ停止 |
systemctl restart サービス名 | 再起動 |
systemctl enable サービス名 | 起動時に自動起動するよう設定 |
systemctl disable サービス名 | 自動起動を無効にする |
systemctl is-enabled サービス名 | 自動起動の設定を確認 |
つかい方の例
SSHサービスの状態を確認
systemctl status sshd
Apacheを起動
sudo systemctl start httpd
Apacheを自動起動に設定
sudo systemctl enable httpd
応用:特定のサービスをさがす
キーワードでサービスを検索
例:「ssh」に関連するサービスだけをみたい場合
systemctl list-units --type=service | grep ssh
例:「network」に関連するサービスをさがす場合
systemctl list-units --type=service | grep network
失敗したサービスだけをみる
systemctl list-units --type=service --failed
エラーになっているサービスだけが表示されるので、トラブルの原因をみつけやすくなります。
GUIでも確認できます

コマンドがにがてな人は、グラフィカルなツールもつかえます。
システムモニター
- 「アクティビティ」から「システムモニター」を起動
- 「プロセス」タブでサービスの状態を確認
Cockpit(Webベースの管理ツール)
Cockpitをインストールすると、ブラウザでサービス管理ができます。
# Cockpitをインストール
sudo dnf install cockpit
# Cockpitを起動
sudo systemctl enable --now cockpit.socket
インストール後、ブラウザで「https://localhost:9090」にアクセスすると、GUIでサービス管理ができます。
実際の例:よくつかうサービス
Webサーバー関連
- httpd:Apache Webサーバー
- nginx:Nginx Webサーバー
データベース関連
- mariadb:MariaDB(MySQL互換)
- postgresql:PostgreSQL
セキュリティ関連
- firewalld:ファイアウォール
- sshd:SSH接続サービス
システム関連
- NetworkManager:ネットワーク管理
- chronyd:時刻同期
よくある質問
Q:maskedってなに?
「masked」は、完全に起動できないようにしてあるサービスです。間違ってつかわないようにする安全装置のようなものです。
Q:serviceコマンドとはちがうの?
「service」コマンドは古いシステム(SysVinit)で使われていたコマンドです。今は「systemctl」をつかうのが推奨されています。
Q:サービスを間違って止めてしまったら?
重要なサービスを止めてしまった場合は、以下のコマンドで再起動できます:
sudo systemctl start サービス名
Q:どのサービスが重要?
以下のサービスは止めない方がよいです:
- NetworkManager(ネットワーク接続)
- systemd関連(システムの基本機能)
- firewalld(セキュリティ)
トラブルシューティング
サービスが起動しない場合
- 状態を詳しく確認
systemctl status サービス名
- ログを確認
journalctl -u サービス名
- 設定ファイルを確認
systemctl cat サービス名
まとめ
Fedoraでは、「systemctl」をつかってサービスの一覧表示や管理が簡単にできます。
まずは「どんなサービスが動いているのか」を確認するだけでも、トラブル対応やシステム管理にとても役立ちます。
目的別コマンドまとめ
目的 | コマンド |
---|---|
動いているサービスを確認 | systemctl list-units --type=service |
すべてのサービスを表示 | systemctl list-unit-files --type=service |
詳しい状態を確認 | systemctl status サービス名 |
特定のサービスを検索 | grep キーワード で絞り込み |
失敗したサービスを確認 | systemctl list-units --type=service --failed |
GUI管理 | Cockpitを活用 |
コメント