SSH прекращает работать, если команда работает от локального (входящий в систему от OS X)

ssh управляет, только выполняют от локальной системы.

для, например:

ssh myuser@mydomain.com df -h

Это работало, и затем после этого ssh протокол был повешен. Это остается, зависают в течение приблизительно 10 минут, и с другой стороны становится нормальным снова. Сообщение об ошибке, что я добираюсь, является этим.

ssh: connect to host mydomain.com port 22: Operation timed out

3
задан 18 April 2017 в 15:23

1 ответ

Проблема состоит в том, что ssh-агент, работающий на Вашей локальной машине, зависает и препятствует тому, чтобы Вы пытались установить другую связь. Я верю ssh-agent, должен выйти, когда Ваше соединение SSH завершается и концы процесса, но по некоторым причинам реализация OS X зависает. Этот экземпляр ssh-агента не доступен другим экземплярам Вашего пользователя из соображений безопасности.

решение, которому я верю, применялось бы, если бы это происходило в Ubuntu также, то должен просто уничтожить процесс ssh-агента, когда Вы сделаны с Вашей ssh сессией, прежде, чем запустить другой.

, Если ssh-agent зависание оказывается проблемой, можно автоматически закончить его после сессии с:

~$ ssh username@hostname && kill $(pgrep ssh-agent)

[РЕДАКТИРОВАНИЕ]

то, Что команда состоит в том, если клиент Вы соединяетесь от, имеет только одного пользователя, использующего ssh, если Вы устанавливаете связи от машины с несколькими, параллельными соединениями SSH от различных пользователей. Вы захотите использовать:

~$ ssh username@hostname && kill $(ps -U your_local_username | grep ssh-agent | grep -oP "^\d+")
2
ответ дан 1 December 2019 в 16:55

Другие вопросы по тегам:

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