У меня действительно тревожная проблема. Я не могу gpg-agent
удалить свой ключ SSH из его связки ключей, и он даже сохраняется там после многих перезагрузок.
$ ssh-add -D
SSH_AGENT_FAILURE
Failed to remove all identities.
Даже когда я говорю это, чтобы удалить личность:
$ ssh-add -d /path/to/private/key
Identity removed: /path/to/private/key
Я тогда смотрю
$ ssh-add -l
4096 1b:cb:52:a6:e5:13:e6:78:14:12:92:8f:34:8f:92:88 /path/to/private/key
и это все еще там.
Где это кешируется? Похоже, что по какой-то причине он записывает на диск, что страшно для SSH-агента. Я запускаю следующее, чтобы начать gpg-agent
:
gpg-agent --enable-ssh-support --daemon
Все остальное работает нормально, но куда-то кеширует этот файл и мне нужно его удалить.
Да, похоже, что
ssh -d
сломан агентом gpg. Вот обходной путь, использующий другую команду.Запустите
gpg-connect-agent
команду из командной строки, чтобы подключиться к агенту. Затем из приглашений введите эту команду, чтобы вывести список ключей ssh.Вы должны увидеть что-то вроде:
Теперь, чтобы удалить из агента:
Он скажет:
Теперь выйдите с помощью команды BYE:
Теперь проверьте с помощью,
ssh-add -l
и вы увидите, что это действительно так.источник
DELETE_KEY <id>
давая больше информации о том, откуда пришел файл… было полезно выяснить, какой именно ключ былЕсли вы хотите скрипт для этого:
Я не эксперт здесь, поэтому я просто даю простой сценарий, который я использую. Ничего фантастического. Ничего глубокого
источник