RemainAfterExit=True
DimitriPapadopoulos opened this issue · comments
Could you perhaps explain the purpose of that line?
RemainAfterExit=True
I cannot understand how it applies here:
Takes a boolean value that specifies whether the service shall be considered active even when all its processes exited. Defaults to no.
See also When should the option RemainAfterExit needs to be set true when creating new systemd services?:
Use
RemainAfterExit=yes
for services, which somehow change state of the system. When you want that state reverted, you just stop the service. Then you can start it again, but not without first stopping it. An example would be service which creates a flag in filesystem to be used by some other application. On start, it create the flag file, then exists, but the service is kept as active by systemd. Then you can stop it and it will remove the flag file.Use
RemainAfterExit=no
for services, which do some action, but do not change the state of the system. An example would be a service to cleanup/tmp
. You start it, it will do its work and then be inactive (no need to stop it). And you can start it again anytime and will again to its work (cleanup).
See also Systemd script does ExecStop right after ExecStart:
if you run
[Service] Type=simple
than you need: RemainAfterExit=yes
OR use forking:
[Service] Type=forking
Honestly, I don't remember the exact reason (it's been like half a decade since I've managed Matlab), it's probably that I didn't know about Type=forking
at the time I set this repo up. Please submit a PR if you've got a change that works and I'll merge it.
I've merged the associated PRs. I'll close this out 🙂