Systemd スクリプトを実行するサービスのテンプレート

この記事を作った動機 systemd を使って何かしらスクリプトを実行したい(例えば、自動的にネットワークドライブをマウントする)ときとかあるのですが、そのたびに検索したり過去に書いたスクリプトを漁るのは面倒なので、自分用にメモ書きのテンプレを置くだけです。本当にただの自分用テンプレなので、説明とかは全然していません。 テンプレ スクリプトの実行 最小構成だと、Exec周りは、ExecStartだけでとりあえず動かすことができる。 [Unit] Description=a systemd service run a script. After= [Service] WorkingDirectory= Type=simple User=root ExecStartPre= ExecStart= ExecStartPost= ExecStopPre= ExecStop= ExecStopPost= Restart=on-abort [Install] WantedBy=multi-user.target プログラムの常駐 こちらも、最小構成だと、Exec周りは、ExecStartだけでとりあえず動かすことができる。ただ終了が強制終了になってしまうので注意する。 [Unit] Description=a systemd service run a script. After= [Service] WorkingDirectory= Type=forking User=root ExecStartPre= ExecStart= ExecStartPost= ExecStopPre= ExecStop= ExecStopPost= Restart=on-abort [Install] WantedBy=multi-user.target After= の設定 以下のようにして、どのサービスなどのあとにサービスを実行したいか、参考になると思われる。 systemctl list-units 参考にしたサイトとか systemd.service man ページ(2025年4月2日) systemd man ページ(2025年4月2日) ...

April 2, 2025