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 выше, могу ли я получить две альтернативы, одна из которых испортилась / устарела? Или сокеты очищаются автоматически, когда процесс, владеющий ими, умирает? Оказывается, там могут быть несвежие розетки. Просто была проблема.

1 ответ1

1

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .