トップページ > コンテンツ > ネットワーク関連メモ > ネットワーク運用編 > UNIXディレクトリ構成 > xxxx.service

ここではServiceの書き方について、まとめる。
Serviceは大きく、[Unit][Service][Install]のセクションに分かれる。
設定したUnitの詳細情報を確認する場合は、systemctl show Unit名とすると良い。

[Unit] 依存関係を規定

Description Unitの説明文
Requires 同時に有効化が必要なUnit
Wants 同時に有効化が必要なUnit
Before 自分自身は本項目で設定したUnitの前に起動
After 自分自身は本項目で設定したUnitの後に起動

※Unit一覧はsystemctl list-unit-filesで確認可能。
※Unitのタイプ(target,service,mountなど)についてはこちらのサイト参照。

[Service]

BusName サービスが到達可能なbus接続名
EnvironmentFile 環境変数を読み込むファイル
ExecReload サービスリロード時の実行コマンド
ExecStartPre サービス起動前のコマンド
ExecStartPost サービス起動後のコマンド
ExecStart サービス起動時の実行コマンド
ExecStop サービス停止時の実行コマンド
ExecStopPost サービス停止後のコマンド
KillMode ExecStopで停止せずに残ったプロセスの処理方法
LimitCORE Coreファイル(プロセス異常終了時のメモリ内容)に関する設定
LimitNOFILE サービスが開けるファイル数の上限。
LimitNPROC サービスのプロセス/スレッドの上限数
PIDFile メインプロセスのPIDファイル出力先
Restart サービスプロセス停止時の再起動条件。always,no,on-success,on-failure等がある。
RestartSec サービス再起動までのスリープ時間
StartLimitInterval 再起動を試みるまでのインターバル期間
SuccessExitStatus メインプロセスに返却される正常終了時のexit status
TimeoutStartSec 起動完了までに待機する時間
TimeoutStopSec 停止完了するまでに待機する時間
Type サービスプロセスの起動タイプ。(simple:バックグラウンド実行,forking:最初のプロセスは停止し、子プロセスをバックグランド実行,oneshot:単発実行,notify:sd_notifyを使用,dbus:dbusを使用がある)
User/Group プロセスを起動するユーザ/グループ

[Install] enable/disableに関する内容を記載

WantedBy enable時にこのUnitの.wantsディレクトリにシンボリックリンクをはる
RequiredBy enable時にこのUnitの.requiredディレクトリにシンボリックリンクをはる
Also enable/disable時に同時にenable/disableするUnit


最終更新:2018年09月17日 14:23