⚙️ systemctl とは?
systemctl は
Linux でサービス(常駐プログラム)を管理するためのコマンド。
サーバー運用では
👉 「サービスが動いているか?」を確認・操作する
ために必ず使う。
🧩 サービスとは?
サーバー上で常に動いているプログラムのこと。
例:
- 🌐 Webサーバー(nginx / apache)
- 🗄 DBサーバー(mysql / mariadb)
- 🔐 SSH サービス
👉 systemctl は これらをまとめて管理する。
👀 サービスの状態を確認する
🧪 基本形
systemctl status サービス名
🧪 例 systemctl status nginx
🔍 見るポイント
-
active (running)→ 動作中 ✅ -
inactive/failed→ 停止・エラー ⚠️
👉 まず status を確認が鉄則。
▶️ サービスを起動・停止する
▶️ 起動する
sudo systemctl start nginx
⏹ 停止する
sudo systemctl stop nginx
🔄 再起動する(よく使う)
sudo systemctl restart nginx
💡 設定変更後は restart が定番。
🔁 サービスを自動起動させる
📌 起動時に自動で立ち上げる
sudo systemctl enable nginx
🚫 自動起動を解除する
sudo systemctl disable nginx
👉enable = サーバー再起動後も自動で起動
📋 サービス一覧を確認する
🧪 実行中のサービス一覧
systemctl list-units --type=service
👉 「今、何が動いているか」を把握できる。
🧠 実務でよくある流れ
ssh user@example-server
systemctl status nginx
sudo systemctl restart nginx
systemctl status nginx
exit
👉接続 → 状態確認 → 操作 → 再確認が基本ルーティン。
⚠️ 注意ポイント(重要)
-
本番環境での
restartは影響範囲を意識する -
サービス名は正確に入力する
-
status を見ずに操作しない
👉「いきなり止める」は事故の元。
✅ まとめ
| 操作 | 内容 |
|---|---|
👀 systemctl status |
状態確認 |
▶️ start |
起動 |
⏹ stop |
停止 |
🔄 restart |
再起動 |
🔁 enable / disable |
自動起動設定 |
👉 systemctl はサーバー運用の必須スキル