#4048 Socket unit's ExecStartPre= checks make 'systemctl is-system-running', etc., less useful
Closed: Invalid 4 years ago by yrro. Opened 4 years ago by yrro.

One of the tools that I use to make sure my systems are running is to run 'systemctl is-system-running'. This outputs 'degraded' (and exits non-zero) if any units are in the failed state.

When using socket activation, the socket units are configured to prevent themselves from being launched by using the ExecStartPre= directive, so that they don't end up conflicting with the sockets opened by responders launched via the monitor.

The side effect of this is that if an enabled socket unit conflicts with a responder, the ExecStartPre= command fails, which stops the socket unit from being started; but also the unit enters the 'failed' state and systemd considers the system to be degraded, tripping my monitoring...


What is an output of systemctl status for problematic sockets ?

I assume it is enabled otherwise systemctl is-system-running would not check them.
If sssd*.sockets are enabled by default on your distributions and you do not want to use socket activated responders by default I would recommend to disable them or even mask them.

Indeed, they were enabled (when Debian modified their sssd package to use socket activation by default). I didn't realise I could just disable or mark the problematic socket.

Metadata Update from @yrro:
- Issue close_status updated to: Invalid
- Issue status updated to: Closed (was: Open)

4 years ago

SSSD is moving from Pagure to Github. This means that new issues and pull requests
will be accepted only in SSSD's github repository.

This issue has been cloned to Github and is available here:
- https://github.com/SSSD/sssd/issues/5016

If you want to receive further updates on the issue, please navigate to the github issue
and click on subscribe button.

Thank you for understanding. We apologize for all inconvenience.

Login to comment on this ticket.

Metadata