Control: Am Samstag, den 24.06.2017, 18:13 +0200 schrieb Tobias Frost: > Package: ejabberd > Version: 16.09-4 > Severity: important > > Dear Maintainer, > > ejabberd fails to start during installation: > > Setting up ejabberd (16.09-4) ... > Generating SSL certificate /etc/ejabberd/ejabberd.pem... > > Creating config file /etc/ejabberd/ejabberd.yml with new version > Created symlink /etc/systemd/system/multi- > user.target.wants/ejabberd.service → > /lib/systemd/system/ejabberd.service. > Job for ejabberd.service failed because a timeout was exceeded. > See "systemctl status ejabberd.service" and "journalctl -xe" for > details. > invoke-rc.d: initscript ejabberd, action "start" failed. > ● ejabberd.service - A distributed, fault-tolerant Jabber/XMPP server > Loaded: loaded (/lib/systemd/system/ejabberd.service; enabled; > vendor preset: enabled) > Active: activating (auto-restart) (Result: timeout) since Sat > 2017-06-24 17:57:46 CEST; 13ms ago > Docs: https://www.process-one.net/en/ejabberd/docs/ > Process: 12317 ExecStart=/bin/sh -c /usr/sbin/ejabberdctl start && > /usr/sbin/ejabberdctl started (code=killed, signal=TERM) > Tasks: 0 (limit: 4915) > CGroup: /system.slice/ejabberd.service > > Jun 24 17:57:46 sviech.de systemd[1]: Failed to start A distributed, > fault-tolerant Jabber/XMPP server. > Jun 24 17:57:46 sviech.de systemd[1]: ejabberd.service: Unit entered > failed state. > Jun 24 17:57:46 sviech.de systemd[1]: ejabberd.service: Failed with > result 'timeout'. > dpkg: error processing package ejabberd (--configure): > subprocess installed post-installation script returned error exit > status 1 > Processing triggers for systemd (232-25) ... > Errors were encountered while processing: > ejabberd > E: Sub-process /usr/bin/dpkg returned an error code (1) > > > > Debugging into it: > > * Actually, ejabberd *is* started, but systemd does not detect this, > times out, kills it, retries and eventually gives up.a > (e.g PID file is generated, ejabberd's logfile says so, its crash and > error logs are empty) > * Also a manual systemctl start ejabberd hangs > * Looking at the service file, it does: > ExecStart=/bin/sh -c '/usr/sbin/ejabberdctl start && > /usr/sbin/ejabberdctl started' > * When doing this manually, > "/usr/sbin/ejabberdctl start" works fine, but > "/usr/sbin/ejabberdctl started" hangs. > > > Thanks! >
Digging more into it, it seems that I needed to explicitly set the hostname in /etc/default/ejabberd. Afterwards (after nuking the database files) ejabberctrl was able to connect to the node. Not sure if this is intended or why the hostname in /etc/hostname did not do the trick; ejabberctrl insited on the nodename like "sviech" instead of "sviech.de" (that is without tld).. I guess this report can be closed, but as said, I'm not sure if this is intended. -- tobi

