Сеанс Python paramiko SSH не активен после простоя в течение многих часов в Centos Linux - PullRequest
0 голосов
/ 24 апреля 2018

Я использую python paramiko ssh.exec_command для отправки команд на подчиненную машину с главной машины (от сентос до центос).Ведущий отправляет команду подчиненному и ждет (спит или делает что-то значимое), чтобы он был выполнен подчиненным.Рабу требуется около 10 часов для выполнения команды.Через 10 часов, если мастер отправляет следующую команду ведомому с помощью ssh.exec_command, я получаю сообщение об ошибке, в котором говорится, что сессия SSH не активна.Я попытался установить ServerAliveinterval, TCPKeepAlive в файле ssh_config как на главной, так и на ведомой стороне.Но ничего не сработало.Каковы все другие возможности, которые мне нужно проверить, чтобы сохранить сессию SSH навсегда.

1 Ответ

0 голосов
/ 25 апреля 2018

ServerAliveInterval не влияет на Парамико.

Использование Transport.set_keepalive:

transport = client.get_transport()
transport.set_keepalive(60)

Если это не помогает (типично, потому что сервер игнорирует keepalive), вы должны поддерживать сеанс самостоятельно. Например. заставляя команду производить вывод непрерывно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...