Murloc Cult

Back to the archive

worldserver service silently stopping: inherited systemd override

The worldserver service exited immediately with code 0 and no output. A systemd override left by the previous installation replaced the start command; it was removed and the databases, partially filled by the diagnostic tests, were recreated empty.

Symptom

systemctl start ac-worldserver: service active, then Deactivated successfully within the same second, no log line. Run by hand or through systemd-run with the same protections, the same command works.

Cause

systemctl cat reveals an ac-worldserver.service.d/coredump.conf file left by the previous installation: it cleared ExecStart and replaced it with a screen launch of a binary that no longer exists. screen -D -m exited at once with code 0.

Fix

  • Override removed (a copy exists in the previous version's archive), daemon-reload.
  • The diagnostic tests had been interrupted mid-import: the three databases, which held no data yet, were dropped and recreated empty before the real first start.

Lesson

Always check a service's effective definition with systemctl cat, which also shows overrides, rather than only the main unit file.