Comment 10 for bug 1346431

Revision history for this message
Chris Knadle (chris-knadle) wrote :

Yep, that duplicated the bug; mumble-server will start, does not show "Server Listening", and indeed 'netstat -tpln' shows it's listening only locally and on a different port:
tcp 0 0 127.0.0.1:6502 0.0.0.0:* LISTEN 2360/murmurd

That's the Ice port that is shown in the log:
<W>2015-03-20 22:32:28.962 MurmurIce: Endpoint "tcp -h 127.0.0.1 -p 6502" running

On the Ubuntu 14.04 mumble-server package, Ice is enabled by default and set to listen on localhost only [on the current mumble-server package in Debian Sid and Jessie (1.2.8-2) that is about to be released, Ice is disabled by default]. So by default without networking available, murmurd starts but is only listening on the Ice port. If Ice is disabled in /etc/mumble-server.ini in Ubuntu then the init script will still run but murmurd will *not* be started at all, and the log doesn't seem to indicate that.

I think what's going on is that there's only an init script for mumble-server right now -- there haven't been any changes made for upstart nor systemd. The init script indicates that networking is required before starting:
   # Required-Start: $network $local_fs $remote_fs
but it seems that upstart and systemd may not be parsing these comments to delay the startup of mumble-server (murmurd) until networking is available.

So to fix this I think requires patching mumble-server to add upstart and systemd service files so that those init systems are aware that they need to delay the startup of mumble-server until networking is available. I'm likely going to focus on systemd first because that's the default in Debian (and now Ubuntu) but in the meantime if someone has an upstart service file for mumble-server I'd be glad to see if I can figure out how to get it into Ubuntu 14.04 at some point. [At preasent I'm not a Debian Developer nor a Debian Maintainer -- I'm "just a guy" -- so I need a DD to sponsor an upload even for Debian. ;-)]