Murloc Cult

Retour aux archives

Service worldserver qui s'arrêtait en silence : surcharge systemd héritée

Le service worldserver se terminait immédiatement avec le code 0, sans aucune sortie. Une surcharge systemd héritée de l'installation précédente remplaçait la commande de lancement ; elle a été retirée et les bases, partiellement remplies par les tests de diagnostic, recréées vides.

Symptôme

systemctl start ac-worldserver : service actif puis Deactivated successfully dans la même seconde, aucune ligne de journal. Lancée à la main ou via systemd-run avec les mêmes protections, la même commande fonctionne.

Cause

systemctl cat révèle un fichier ac-worldserver.service.d/coredump.conf laissé par l'ancienne installation : il vidait ExecStart et le remplaçait par un lancement dans screen d'un binaire qui n'existe plus. screen -D -m sortait aussitôt avec le code 0.

Correctif

  • Surcharge supprimée (une copie existe dans l'archive de l'ancienne version), daemon-reload.
  • Les tests de diagnostic avaient été interrompus en plein import : les trois bases, qui ne contenaient encore aucune donnée, ont été supprimées et recréées vides avant le vrai premier démarrage.

Leçon

Toujours vérifier la définition effective d'un service avec systemctl cat, qui affiche aussi les surcharges, plutôt que le seul fichier principal.