On Wed, 04.02.15 11:13, Peter Valdemar Mørch (pe...@morch.com) wrote: > First: Please let me know if this is an inappropriate place to ask this > > # systemctl restart syslog.socket rsyslog.service > > seems to always work. But > > # systemctl restart rsyslog.service syslog.socket > > , the opposite sequence, seems to sometimes fail (details below). I'm > wondering: Why is that?
Whats are the precise ordering and requirement deps between those two services? Note that the command will first enqueue the restart job for the first mentioned service, then the restart job for the second service. It will then wait for both jobs to complete. Depending on the deps it might happen in the second case, that the service is first stopped, and then the socket stopped, and then the service started again. Now, when the socket is about to be started again too, the service will already be up, but in non-socket-activation mode, at which point the socket unit refuses to start up, in order to not corrupt the socket the service created on its own without usage of socket activation. This is something that can be fixed by adding stricter deps between the service and the socket, so that the socket is always required to be started before the service. Something for the respective package maintainers upstream to fix. Alternatively, only restart the service, don't bother with the socket... Lennart -- Lennart Poettering, Red Hat _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel