Сессия SSH никогда не закрывается, когда выполнение “склонного - получает установку”

SSH по умолчанию имеют довольно долгие тайм-ауты, значения по умолчанию к тайм-ауту TCP и тайм-аутам TCP по умолчанию длинны.

Любая форма проверки активности на самом деле заставила бы его отбросить соединение раньше, потому что то, когда клиент/сервер видел бы, что сообщения проверки активности не добираются для предназначения для нее, отбросило бы соединение.

Таким образом, пока Ваш IP остается, то же соединение SSH может сохраниться очень долго, это, если нет ничего "продолжающего" заполнить буферы send/recv

14
задан 7 March 2016 в 02:14
3 ответа

Следующий ответ на SF сработал:

ssh не может выполнить удаленную команду при запуске из сценария cron bash

Флаг -t вызывает псевдо -tty распределение, за исключением, возможно, случаев, когда нет локального TTY. Но передача флага дважды, как в -t -t , просто делает вид, что делает это. И это решило проблему.

См. Документацию SSH:

-t Принудительное выделение псевдотерминала. Это может использоваться для выполнения произвольных экранных программ на удаленном компьютере, что может быть очень полезно, например, при реализации служб меню. Несколько параметров -t принудительно выделяют tty, даже если ssh не имеет локального tty.

Почему это сработало? Оказывается, debconf больше не жалуется на интерфейс в журналах.

6
ответ дан 2 December 2019 в 21:13

Насколько я понял, это может помочь. Вызов любой команды должен сопровождаться exit и heredoc. Нашел решение, но лично не пробовал.

ssh user@myremotemachine <<-EOF
free -m
exit
EOF

Исходный ответ приходит отсюда: http://www.thetechrepo.com/main-articles/529-execute-a-command-remotely-over- ssh-and-then-close-the-connection

1
ответ дан 2 December 2019 в 21:13

В debian/jessie я успешно выполнил эту команду:

ssh user@host "TERM=READLINE sudo apt-get install --reinstall less && echo done"

Но, возможно, вам стоит подумать об использовании возможности для этой и других повышающих задач http://docs.ansible.com/ansible/apt_module. html

1
ответ дан 2 December 2019 в 21:13

Теги

Похожие вопросы