目前,我的 .bashrc 文件中有启动 SSH 代理的命令。问题是,这只适用于特定的终端 - 每次我打开终端时,都会要求我提供私钥的密码。
有没有办法打开 SSH 代理,以便它可以用于多个终端,而无需每次重新输入密码?
答案1
SSH_AUTH_SOCK
要使用的代理由环境变量(以及代理进程本身 - by )决定SSH_AGENT_PID
,因此您可以将它们保存到启动脚本中的文件中(以预期用户身份在其中执行 ssh-agent )并传递到 .bashrc 脚本中的登录 shell 。这将为您提供的不是系统范围的代理,而是用户范围的代理。另外,如果您在这台机器上使用 X,您可以将 ssh-agent 添加到启动 X 的终端,这些变量将由从 X 调用的 shell 继承。您的问题没有指定足够的环境细节来更具体。