当我运行 Gnome 时,如果未加载身份,ssh-agent 将在 slogin/ssh 上运行 ssh-add。我想在远程 shell 上模仿这种行为,但我发现的所有内容都建议在登录时运行 ssh-add。如果我随后在远程 shell 上运行 slogin/ssh,我只想运行 ssh-add,而不是每次登录时。
当我运行 Gnome 时,如果未加载身份,ssh-agent 将在 slogin/ssh 上运行 ssh-add。我想在远程 shell 上模仿这种行为,但我发现的所有内容都建议在登录时运行 ssh-add。如果我随后在远程 shell 上运行 slogin/ssh,我只想运行 ssh-add,而不是每次登录时。
我通过 bash shell 解决了这个问题。
添加到 .bashrc:
其实还有更简单的方法。
ssh-add -l
如果有键,则返回 true (0),否则返回 false (1),因此您的第一个函数可以替换为:在«这是一个交互式会话»部分更简单添加
如果您
AddKeysToAgent yes
在~/.ssh/config
.(我从https://superuser.com/a/1114257/42546了解到这一点。我不确定在各种 StackExchange 站点上应对答案的正确 StackOverflow 礼仪是什么。)