systemdに移行するための最初のルール
この時点で、2015年には、誰かがすでにそれを行っている可能性が最も高いです。
systemdは数年前から存在しています。そして、ユニットファイルを書いて公開する人々の家内産業がありました。特にGitHubは、サービスユニットのコレクションのリポジトリを引き付けるようです。
実際、autossh.service
(フレーズとして)WWWを検索すると、次のようになります。
テンプレートユニット
とはいえ、StackExchangeのいくつかの場所で指摘したように、この種の移行は機構的なプロセスではなく、ユニットファイルにあるものからロボットに変換するだけで、誤って、または少なくとも不十分に動作します。この場合、テンプレートユニットでautossh
処理されるように積極的にパンし、ターゲット名でパラメーター化された実際のサービスユニットにインスタンス化されます。として、持っている:/etc/systemd/system/autossh@.service
[単位]
Description =%iからのリバーストンネルのAutoSSHサービス
After = network.target
[サービス]
User = autossh
EnvironmentFile = / etc /%p /%i.conf
ExecStart = / usr / bin / autossh -M 0 -q -N $ SSH_USER @%i $ SSH_OPTIONS
[インストール]
WantedBy = multi-user.target
/etc/autossh/other_server.example.conf
最小限の名前でファイルを作成します。
SSH_USER = joe
通常の制御はすべて適用されます:
systemctl enable autossh@other_server.example
—インスタンスをブートストラップで自動的に開始できるようにします。
systemctl start autossh@other_server.example
—そのインスタンスをすぐに手動で開始します。
systemctl status autossh@other_server.example
—そのステータスを参照してください。
そして、はい、最初のルールもこれに適用されます。検索してみると、OpenSUSEのGreg Freemyerによって、2週間も経たないうちにこれにtoられたことがわかります。