admin_hub

sysop@hub:~/tools/systemd-unit-builder$

systemd-unit-builder

Running a program as a service on Linux takes fifteen lines that nobody remembers. Answer a few questions and get the unit file, a timer if it is a scheduled job, an explanation of every line, and the commands to install and test it. The usual mistakes (no full path, shell syntax, sudo, nohup) are caught as you type.

Start from:

The files go to /etc/systemd/system, never to /usr/lib/systemd: that folder belongs to packages. To change a unit that a package installed, use sudo systemctl edit name.service, which writes an override instead. Strict hardening breaks programs that write where they should not: start with basic, then tighten and watch the journal. Related: cron and timer builder for the schedule syntax, systemd and journalctl cheat sheet, Linux playground, config reviewer, server hardening checklist.