[systemd-devel] systemd and sshd.socket/sshd at .service

Lennart Poettering lennart at poettering.net
Fri Feb 18 03:32:59 PST 2011


On Fri, 18.02.11 14:27, Vasiliy G Tolstov (v.tolstov at selfip.ru) wrote:

> 
> On Tue, 2011-02-08 at 13:08 +0100, Lennart Poettering wrote:
> > On Tue, 08.02.11 14:49, Vasiliy G Tolstov (v.tolstov at selfip.ru) wrote:
> > 
> > > > Oh, intreresting. It's in "failed" state. Can you check syslog/kmsg if
> > > > systemd generated any kind of log output when this happened? i.e. around
> > > > Mon, 07 Feb 2011 22:36:51 +0300. This should give us a hint on what
> > > > might be wrong.
> > > > 
> > > > Lennart
> > > > 
> > > 
> > > /var/log/messages does not contain any info
> > > sshd log says: error: Could not load host
> > > key: /etc/ssh/ssh_host_ecdsa_key , but this not critical (sshd runs
> > > after systemctl stat sshd.socket)
> > 
> > Hmm, can you try to reproduce this when booting with
> > systemd.log_level=debug and systemd.log_target=kmsg on the kernel
> > cmdline? Then, kmsg should definitely include a message on what is going
> > on. (and when we found it we probably should bump up the error level of
> > that msg)
> > 
> > Lennart
> > 
> 
> Hm.. I'm upgrade systemd to current (18) and reboot. After that systemct
> start sshd at .service says that unit name not valid. Is this correct
> behaviour?

Yes, it is. "sshd at .service" is merely a template name. You cannot start
it just like that. It needs to be instantiated as "sshd at SOMETHING.service".

You have the choice to either start "sshd.service", which is the
traditional stand-alone ssh server. Or you instead start "sshd.socket",
which uses inetd-style per-connection sshd instances. For that it will
spawn one instance of sshd for each conection and those are going to be
instances of "sshd at .service" with the socket address used as instance
name, for example: "sshd at 192.168.47.11-55-10.0.1.3-88.service".

Lennart

-- 
Lennart Poettering - Red Hat, Inc.


More information about the systemd-devel mailing list