После отправки команды завершения сеанс ssh не завершается

Всякий раз, когда я отправляю команду отключить или перезапустить мои серверы Debian, моя оболочка остается висящей и не отвечает (не может вводить никаких команд).

введите описание изображения здесь

Выполнение того же действия в Ubuntu приводит к тому, что сеанс изящно закрывается, поэтому я не имею привязанного к нему терминала. Есть ли пакет, который мне нужно установить или изменить конфигурацию, чтобы я мог получить такое же поведение в Debian?

  • VPN-сервер в systemd-nspawn machine
  • Как переключиться с CLI на GUI Ubuntu
  • Поддерживает ли systemd перезапуск при отказе для демона forking?
  • Могу ли я узнать, запущен ли я в systemd?
  • Автоматическая копия нового ядра для `/ boot / efi` при обновлении ядра
  • Ошибка Debconf в системе с systemd
  • Systemd restart, если один из процессов в группе управления не работает
  • экспортировать все переменные из среды EnvironmentFiles
  • 2 Solutions collect form web for “После отправки команды завершения сеанс ssh не завершается”

    Это сработало для меня:

     apt-get install libpam-systemd dbus 

    Также убедитесь, что у вас есть UsePAM yes в вашей конфигурации ssh.

     grep -i UsePAM /etc/ssh/sshd_config 

    К сожалению, вам необходимо перезагрузить, чтобы решение вступало в силу …

    Подробные объяснения на serverfault .

    Похоже, это проблема systemd настоящее время отслеживается при ошибке # 751636 .

    Когда хост выключен или перезагружен, systemd может отключить сеть, прежде чем она убьет сеанс ssh.

    Есть несколько решений, но ничего конкретного:

    1. Используя acpid/acpi-support-base для обработки событий питания и добавьте следующее в /etc/acpi/powerbtn-acpi-support.sh

       else - # Normal handling. - /sbin/shutdown -h -P now "Power button pressed" + + if [ -x /bin/systemctl ] ; then + echo "\nPower button pressed\nThe system is going down for system halt NOW!" |\ + /usr/bin/wall -n + /bin/systemctl --force poweroff + else + # Normal handling. + /sbin/shutdown -h -P now "Power button pressed" + fi + fi 

      а затем сделайте псевдонимы в ~/.bashrc :

       alias reboot='echo "The system is going down for system reboot NOW!" |\ /usr/bin/wall -n ; /bin/systemctl --force reboot' alias poweroff='echo "The system is going down for system halt NOW!" |\ /usr/bin/wall -n ; /bin/systemctl --force poweroff' 
    2. Создание /etc/systemd/system/ssh-user-sessions.service со следующим в нем:

       [Unit] Description=Shutdown all ssh sessions before network After=network.target [Service] TimeoutStartSec=0 Type=oneshot RemainAfterExit=yes ExecStart=/bin/true ExecStop=/usr/bin/killall sshd того, как [Unit] Description=Shutdown all ssh sessions before network After=network.target [Service] TimeoutStartSec=0 Type=oneshot RemainAfterExit=yes ExecStart=/bin/true ExecStop=/usr/bin/killall sshd 
    Linux и Unix - лучшая ОС в мире.