Skills Boost Infra Academy

Linuxのsystemd入門|サービス管理・ユニットファイルの書き方を現役講師が解説

systemctlの基本操作からカスタムserviceファイルの作成まで実践的に解説

Linuxのサービス管理はsystemdが標準となっています。systemctlコマンドの使い方からカスタムunitファイルの作成まで、現場で使えるレベルに解説します。

「サービスが起動しない」「自動起動設定したはずなのに再起動後に動いていない」——こうしたトラブルの多くはsystemdを正しく理解することで解決できます。
T

吉田たかし|元NWエンジニア・現役IT講師

CCNA/CCNP/LPIC-1/AZ-900取得。14年のインフラエンジニア経験を持つ現役IT講師。Linux研修でsystemdのトラブル対応を多数教えてきた経験から、現場で最も使うsystemdの操作を解説します。

📌 この記事のポイント

✅ systemdはLinux起動後のサービス管理・依存関係解決・ジャーナルログ管理を担うシステムマネージャ

✅ systemctl start/stop/enable/disable/status が基本5操作。enableで自動起動を設定する

✅ カスタムServiceユニットファイルを/etc/systemd/system/に作成することで独自プロセスをsystemd管理下に置ける

1. systemctlの基本コマンド一覧

コマンド動作
systemctl start nginxサービスを即時起動
systemctl stop nginxサービスを即時停止
systemctl restart nginxサービスを再起動
systemctl reload nginx設定ファイルをリロード(停止せず)
systemctl enable nginxOS起動時の自動起動を有効化
systemctl disable nginx自動起動を無効化
systemctl status nginxサービスの状態・直近ログを表示
systemctl is-active nginxactive/inactiveを返す(スクリプト向け)
systemctl daemon-reloadunitファイル変更後に必ず実行

2. カスタムServiceユニットファイルの作成

# /etc/systemd/system/myapp.service
[Unit]
Description=My Python App
After=network.target

[Service]
Type=simple
User=appuser
WorkingDirectory=/opt/myapp
ExecStart=/usr/bin/python3 /opt/myapp/main.py
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

作成後は systemctl daemon-reloadsystemctl enable --now myapp で有効化。

3. journalctlでログを確認する

コマンド用途
journalctl -u nginxnginxサービスのログを全件表示
journalctl -u nginx -fリアルタイムでログを追跡(tail -f相当)
journalctl -u nginx –since today今日のログのみ表示
journalctl -p err -u nginxERRORレベル以上のログのみ表示
journalctl –disk-usageジャーナルのディスク使用量確認

4. よくあるトラブルと対処

1

enableしたのに自動起動しない

daemon-reloadを忘れていないか確認。unit fileに[Install]セクションがない場合も

2

サービスが起動直後にcrashする

systemctl status とjournalctl -u [service] -nで直近ログを確認。ExecStartのパスミス・権限不足が多い

3

Type=simpleが終了してrestartが繰り返す

バックグラウンドへのfork処理をしているならType=forkingに変更が必要

Route Bloom | インフラエンジニアの育成・転職支援

SES案件マッチングから資格取得サポートまで、現役IT講師がトータルで支援します。

無料相談はこちら

※ systemdの動作はLinuxディストリビューション・バージョンによって一部異なります。実際の環境でman systemd.serviceも合わせてご確認ください。

ABOUT ME
たから
サラリーマンをしながら開業して経営やってます。 今年、本業で独立・別事業を起業予定です。 ◆経験:IT講師/インフラエンジニア/PM/マネジメント/採用/運用・保守・構築・設計 ◆取得資格:CCNA/CCNP/LPIC-1/AZ-900/FE/サーティファイC言語 ◆サイドビジネス:アパレル事業/複数のWEBメディアを運営