Я только что обновил свою установку Ubuntu 16.10 до Ubuntu 17.04 и обнаружил, что у меня больше нет рабочего ssh-агента:
$ ssh-add my_rsa_key
Error connecting to agent: No such file or directory
$
При минимальном расследовании я вижу, что SSH_AUTH_SOCK установлен на что-то, что кажется бессмысленным:
$ env | grep SSH
SSH_AUTH_SOCK=/run/user/1000/openssh_agent
SSH_AGENT_LAUNCHER=openssh
$
Я не знаю, что несет ответственность за /run/user/1000/openssh_agent, но оно не работает в моей системе:
$ ls /run/user/1000/openssh_agent
ls: cannot access '/run/user/1000/openssh_agent': No such file or directory
У меня был рабочий ssh-agent на Ubuntu 16.10 после того, как я добавил eval $(ssh-agent) как «приложение для запуска». Это все еще присутствует, и работает ssh-agent, но у меня больше нет правильного агента env vars.
Это может помочь:
Убедитесь, что установлена разумно обновленная версия агента SSH OpenSSH. Добавьте это в ~/.bashrc:if ! pgrep -u "$USER" ssh-agent > /dev/null; then
ssh-agent > ~/.ssh-agent-thing
fi
eval "$(cat ~/.ssh-agent-thing)" >& /dev/null
Используя инструмент GNOME Tweak Tool, перейдите в «Запуск приложений» и удалите «Пароли и ключи». Добавьте это в ~/.pam_environment: GSM_SKIP_SSH_AGENT_WORKAROUND DEFAULT=1
Выйдите из рабочей среды GNOME (или, если необходимо, перезагрузитесь). После выполнения этого обходного пути запуск ssh-agent или ssh-add с терминала GNOME должен привести к вызову агента SSH OpenSSH. Это может помочь:
Убедитесь, что установлена разумно обновленная версия агента SSH OpenSSH. Добавьте это в ~/.bashrc:if ! pgrep -u "$USER" ssh-agent > /dev/null; then
ssh-agent > ~/.ssh-agent-thing
fi
eval "$(cat ~/.ssh-agent-thing)" >& /dev/null
Используя инструмент GNOME Tweak Tool, перейдите в «Запуск приложений» и удалите «Пароли и ключи». Добавьте это в ~/.pam_environment: GSM_SKIP_SSH_AGENT_WORKAROUND DEFAULT=1
Выйдите из рабочей среды GNOME (или, если необходимо, перезагрузитесь). После выполнения этого обходного пути запуск ssh-agent или ssh-add с терминала GNOME должен привести к вызову агента SSH OpenSSH.