我們需要程序一直在背後執行,當 process 因為不明的原因死掉後,必須要有人可以自動從起它,這就是這邊我們用 systemd 的目標。

  1. 首先建立一個 service 的 unit file
  2. 把他複製到 /lib/systemd/system (需要有寫入的權限喔, 例如: root)
  3. 啟動 ( enable) 我們的 service $ sudo systemctl enable application.service
  4. 開始服務 $service application.service restart

如果想重啟 systemd 而不 reboot 的話,sudo systemctl daemon-reload

Systemd Unit example
[Unit]
Description=web
After=network.target

[Service]
User=appuser
Group=appuser
PermissionsStartOnly=true
Restart=always
WorkingDirectory=/usr/local/myweb
ExecStart=/usr/local/myweb
CPUQuota=360%

[Install]
WantedBy=multi-user.target