Featured image of post systemdサービスファイルの作成方法と設定手順メモ

systemdサービスファイルの作成方法と設定手順メモ

これはなに Link to this heading

systemdサービスファイルの作成方法と設定手順のメモ。いつも忘れるのでメモしておくだけ。

手順 Link to this heading

1. systemdサービスファイルを作成する Link to this heading

以下のコマンドを実行して、systemdサービスファイルを作成または編集する。

your-service-name は任意のサービス名に置き換えること。
sudo nano /etc/systemd/system/your-service-name.service

するとエディタが開くので、設定を記述する。例を以下に示す。

[Unit]
Description=Cronitor Dashboard
After=network.target

[Service]
Type=simple
User=nakurei
ExecStart=/usr/bin/cronitor dash --port 9000
Restart=on-failure

[Install]
WantedBy=multi-user.target

Unit セクションではサービスの説明や依存関係を設定する。After=network.target はネットワークが利用可能になった後でサービスを起動することを意味する。他に Requires=Wants= を使えば、依存関係を詳細に設定できる。

Service セクションではサービスの動作方法を定義する。User= はサービスを実行するユーザーを指定し、ExecStart= は実行するコマンドを指定する。終了時のコマンドは ExecStop= で指定できる。Restart= はサービスが失敗した場合の再起動ポリシーを設定する。 Restert=on-failure はサービスが異常終了した場合に再起動することを意味する。

Install セクションではサービスのインストールに関する設定を定義する。WantedBy= はサービスがどのターゲットに関連付けられるかを指定する。multi-user.target は通常のマルチユーザーモードでサービスを起動することを意味する。

以上を記述したら、保存してエディタを閉じる。

ちなみに、このファイルは /etc/systemd/system/ ディレクトリに保存される。

ls /etc/systemd/system/your-service-name.service

2. systemdサービスをリロードする Link to this heading

systemdサービスファイルを作成または編集した後、以下のコマンドを実行してsystemdをリロードする。

sudo systemctl daemon-reload

3. systemdサービスを有効化して起動する Link to this heading

systemdサービスファイルを新規作成した場合は、以下のコマンドを実行する。

your-service-name は任意のサービス名に置き換えること。
sudo systemctl enable your-service-name
sudo systemctl start your-service-name

新規作成ではなく編集した場合は、以下のコマンドを実行する。

sudo systemctl restart your-service-name

4. systemdサービスの状態を確認する Link to this heading

以下のコマンドで、実行状態を確認できる。

your-service-name は任意のサービス名に置き換えること。
sudo systemctl status your-service-name

正常に起動していれば、active (running) と表示される。

5. systemdサービスのログを確認する Link to this heading

以下のコマンドで、サービスのログを確認できる。

your-service-name は任意のサービス名に置き換えること。
sudo journalctl -u your-service-name -f

-f オプションを付けると、リアルタイムでログを監視できる。

Licensed under CC BY-NC-SA 4.0
最終更新 2月 02, 2026
Hugo で構築されています。
テーマ StackJimmy によって設計されています。