[systemd-devel] Socket is dying, how to automatically restart it?

Lennart Poettering lennart at poettering.net
Thu Apr 18 07:04:26 PDT 2013


On Thu, 18.04.13 09:28, Koen Kooi (koen at dominion.thruhere.net) wrote:

> > And if the somebody invokes shutdown() on the listening socket (not the
> > connection socket), but that's a really weird thing to do. But people do
> > weird things, and this has occured before.
> > 
> > Otherwise I have no idea what could have happened. Any chance you can
> > reproduce this with strace attached to PID 1 or so?
> 
> Still trying to reproduce it in a way I can instrument it.
> 
> > Is dropbear forked off one instance per connection, or one instance for
> > all?
> 
> Looks like one instance per connection. 

Hmm, if so dropbear would never get access to the listening socket, to
issue a "shutdown()" on it. This becomes weirder and weirder.

If you manage to reproduce it, it would be good to get the full output
of "systemctl show -a" for the socket unit.

> But I'm going to replace dropbear with openssh in the medium term
> because dropbear doesn't do enough PAM to register itself with logind,
> so things like 'screen' get killed on logout.

You could work around this by use KillMode=process.

That said, screen should probably set up a new PAM session of its own
and detach from the original one.

Lennart

-- 
Lennart Poettering - Red Hat, Inc.


More information about the systemd-devel mailing list