К какому ssh-агенту подключаться при настройке SSH_AUTH_SOCK внутри screen / tmux?

1

Я использую вариант следующей строки:

export SSH_AUTH_SOCK=$(find /tmp/ssh-* -name agent.\* -uid $(id -u)|head -n 1)

найден в Github , Таким образом, я смогу использовать свое перенаправленное соединение агента в удаленной системе даже изнутри screen или же tmux, Тем не менее, что если я установлю два отдельных SSH-соединения с удаленным компьютером, и они оба запустят отдельный экземпляр ssh-agent?

Вопрос сводится к:

  1. я должен избегать запуска другого экземпляра ssh-agent на первом месте?
  2. если ответ «нет» в предыдущем пункте, как выбрать существующий сокет для подключения, если в данный момент есть несколько работающих?
  3. Бонусный вопрос: может ли быть что-то вроде устаревшей розетки? То есть когда я ищу гнездо, используя find Приведенная выше команда, могу ли я в итоге получить две альтернативы, одна из которых испортилась? Или сокеты очищаются автоматически, когда процесс, владеющий ими, умирает? Оказывается, там могут быть несвежие розетки. Просто была проблема.
0xC0000022L
источник

Ответы:

1

Вы должны избегать запуска нескольких ssh-agent процессы в первую очередь. Вы можете использовать команду как pgrep -u <your_username> ssh-agent определить PID вашего ssh-agent процесс (или его отсутствие).

jjlin
источник