Відповіді:
Це задокументовано у man systemctl
:
systemctl disable ssh
запобігає автоматичному запуску служби ssh. Але це так, як це робить systemd, але ubuntu не приймає цього, і вони повинні робити це по-своєму:
Офіційна документація: https://wiki.ubuntu.com/SystemdForUpstartUsers#Automatic_starting
Відповідно до цього слід створити переопределення одиниці без директиви WantedBy=multi-user.target
в /etc/systemd/system/ssh.service
(замість поточного символьного посилання):
rm /etc/systemd/system/ssh.service
cp /lib/systemd/system/ssh.service /etc/systemd/system/ssh.service
sed -e "/WantedBy=multi-user.target/d" -i /etc/systemd/system/ssh.service
systemctl daemon-reload
disable
... Я не знаю, чому я туди поклав status
. Він не працював для мене на Ubuntu (на відміну від інших систем), тому я шукав і інше рішення ...
ssh
над її псевдонімом sshd
. Наприклад, systemctl enable sshd
не працює, оскільки псевдоніми не можна використовувати для включення послуг .
sshd
і це більше пояснює себе. Я не впевнений, чому Debian / Ubuntu почали використовувати саме ssh
для сервера. Я відредагую цю відповідь, щоб відобразити її. Спасибі.
Це трохи більше, ніж вимагали, але нерозумний підхід полягає в тому, щоб видалити пакунок:
sudo apt-get remove openssh-server
Це працює у всіх версіях Ubuntu.
Якщо припустити, що у вас є доступ до Інтернету або збережено кеш пакету, перевстановлення (і автоматичний перезапуск) не є проблемою:
sudo apt-get install openssh-server
sudo apt-get install --reinstall openssh-server