Comment on page

Systemd

Many Linux distributions (including Ubuntu) use systemd which manages system services.
systemd
Wikipedia
(wikipedia.org)
In the following text an example service named vultrdata is used for illustrative purposes.
A service is defined in a file named like /etc/systemd/system/vultrdata.service. Unit files have a format like in this example:
[Unit]
Description=Vultr Instance Metadata Service
After=network.target
[Service]
User=vultrdata
WorkingDirectory=/opt/vultrdata
Restart=always
Environment=API_KEY=____________________________________
ExecStart=/opt/vultrdata/vultrdata --addr 10.1.2.3 --port 8888 --userdata
[Install]
WantedBy=multi-user.target
After creating the file in the /etc/systemd/system directory, issue this command to register it:
$ sudo systemctl daemon-reload
Then you can check the status:
$ sudo systemctl status vultrdata
● vultrdata.service - Vultr Instance Data Service
Loaded: loaded (/etc/systemd/system/vultrdata.service; disabled; vendor preset: enabled)
Active: active (running) since Sun 2020-04-05 19:35:56 UTC; 1 weeks 0 days ago
Main PID: 19694 (vultrdata)
Tasks: 16 (limit: 4661)
CGroup: /system.slice/vultrdata.service
├─19496 /opt/vultrdata/vultrdata --addr 10.1.2.3 --port 8888 --userdata
└─19509 /opt/vultrdata/vultrdata --addr 10.1.2.3 --port 8888 --userdata
Or start, stop, restart it:
$ sudo systemctl start vultrdata.service
$ sudo systemctl stop vultrdata.service
$ sudo systemctl restart vultrdata.service
You can enable or disable starting the unit/service on system startup:
$ sudo systemctl enable vultrdata
$ sudo systemctl disable vultrdata
You can see/tail all systemd logs, or just for your service (unit):
$ sudo journalctl -f
$ sudo journalctl -f -u vultrdata