我将数据从旧 Mac 迁移到新机器。这复制了 .ssh 目录,因此ssh-add -L
显示了我的旧身份。
我决定删除那个使用ssh-add -D
,然后使用创建一个新的身份ssh-keygen
。
随后ssh-add -L
会同时显示我的旧身份和新身份。注销并重新启动无济于事,它一直显示旧身份和新身份。我能找到的唯一包含密钥的文件是在 .ssh 中(id_rsa 和 id_rsa.pub),它们与我生成的新身份相对应。
旧身份如何不断加载?它存储在 Mac OS 的某个地方吗?也许在钥匙串中?我如何才能永久删除它?
答案1
事实证明,我也在使用 GPG 代理进行 SSH,旧身份被 GPG 缓存。编辑文件 ~/.gnupg/sshcontrol 并删除旧身份,解决了这个问题。
答案2
ssh-add -D
只会从正在运行的代理中删除身份信息。您只需进入~/.ssh
目录并删除旧身份即可将其永久删除。