9

How do I restart sshd on raspbian stretch?

This does not work:

pi@raspberrypi:~/.ssh $ sudo systemctl restart sshd
Failed to restart sshd.service: Unit sshd.service not found.
4
  • 3
    try this sudo systemctl restart ssh instead no d Feb 11 '18 at 21:22
  • Why did they drop the d? Its sshd on my Debian stretch. Feb 11 '18 at 21:51
  • 1
    On my Debian stretch I have ssh.service and sshd.service pointing both to /usr/sbin/sshd -D.
    – Ingo
    Feb 12 '18 at 1:34
  • Can you please accept one answer, so your question is finished and will not pop up again for years?
    – Ingo
    Apr 10 '20 at 10:03
7

Same issue with both stretch and jessie. Until you enable the service with:

systemctl enable ssh

you cannot refer to the service as "sshd". Once the service is enabled, no problem, you can even disable the service with:

systemctl disable sshd

Really stupid in my opinion but that's the way it is.

1
  • Exactly, I'm installing ArchlinuxArm to get rid of this kind of hassles.
    – wuxb
    Sep 30 '19 at 18:04
5

In my case on raspberry pi 3B+ device with raspbian OS work this:

sudo service ssh status
sudo service ssh restart
3

As stated in the comments the main service is ssh.service. But you can it also address with sshd.service. As you can see ssh.service has an Alias:

pi ~$ systemctl cat ssh
# /lib/systemd/system/ssh.service
[..]
[Install]
WantedBy=multi-user.target
Alias=sshd.service
pi ~$

Quoted from man systemd.unit:

In addition, unit files may specify aliases through the Alias= directive in the [Install] section; those aliases are only effective when the unit is enabled.

With

pi ~$ sudo systemctl enable ssh

You can also get it with:

pi ~$ systemctl status sshd

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.