Я просто обновил свою установку 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-агент на Ubuntu 16.10 после того, как я добавил eval $(ssh-agent)
как "приложение запуска". Это все еще присутствует и существует выполнение ssh-агента, но у меня, кажется, нет корректного ENV агента набор Вара больше.
Это могло бы помочь:
Удостоверьтесь, что установлена довольно актуальная версия Агента OpenSSH SSH.
Добавьте это к
~/.bashrc
:if ! pgrep -u "$USER" ssh-agent > /dev/null; then ssh-agent > ~/.ssh-agent-thing fi eval "$(cat ~/.ssh-agent-thing)" >& /dev/null
Используя Инструмент Тонкой настройки GNOME, пойдите, чтобы "Запустить Приложения" и удалить "Пароли и Ключи".
Добавьте это к
~/.pam_environment
:GSM_SKIP_SSH_AGENT_WORKAROUND DEFAULT=1
Выйдите из Рабочей среды GNOME (или, в случае необходимости, перезагрузка).
После выполнения этого обходного решения, выполнения
ssh-agent
илиssh-add
от GNOME Терминал должен привести к вызываемому агенту OpenSSH SSH.