- rgrb.service: 通常のサービスファイルです。
- [email protected]: テンプレートサービスファイルです。
以下の項目を前提としてサービスファイルを作成しています。
- RGRB を専用ユーザー「irc」のホームディレクトリにインストールする
- 専用ユーザーの権限で実行する
- 何らかの要因で終了した場合、自動的に再起動する
各システムの定められた場所に、上記のサービスファイルをコピーします。例えば CentOS 7 では、/etc/systemd/system
です。
1つの RGRB を運用するだけでしたら、通常のサービスファイルで十分でしょう。通常のサービスファイル(rgrb.service)を上記ディレクトリにコピーします。
お使いのシステムにあわせて [Service]
内にある各項目の設定値を書き換えます。
項目名 | 設定値 |
---|---|
User | プロセスの実行ユーザー |
Group | プロセスの実行グループ |
PIDFile | プロセスの PID を保存するファイル |
WorkingDirectory | RGRB のルートディレクトリ |
ExecStart | フルパスで RGRB の起動ファイルとオプション |
ExecReload | 現在、RGRB はリロードに対応していないためコメントアウト |
ExecStop | 終了するためのコマンド |
Restart | always を設定すると自動再起動有効 |
ExecXXXX
に指定するコマンドは、すべてフルパスで記述します。
複数の RGRB の設定ファイルを用意し、同時並行で利用する場合でしたら、テンプレートサービスファイルを使うことをお勧めします。テンプレートサービスファイルを利用する場合、systemctl
コマンドに与えるサービス名が、<サービス名>@<識別名>
という書式になります。テンプレートサービスファイル内では、設定値内の %I
がサービス起動時に与える <識別名> に置換されてコマンドが実行されます。デフォルト設定では、config/
ディレクトリ以下に置いた設定ファイルの(拡張子を除いた)ファイル名が <識別名> になるように書かれています。