加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows-7 – 如何隔离msysgit附带的msys实现中提供的ssh-add /

发布时间:2020-12-14 01:52:32 所属栏目:Windows 来源:网络整理
导读:我从 http://code.google.com/p/msysgit/downloads/list安装了msysgit:Git-1.7.8-preview20111206.exe(编辑:我还安装了msysGit-fullinstall-1.7.8-preview20111206.exe,方便安装到不同的目录,我看到同样的问题与那个实例). 我遇到了ssh-agent的问题,ssh-ad
我从 http://code.google.com/p/msysgit/downloads/list安装了msysgit:Git-1.7.8-preview20111206.exe(编辑:我还安装了msysGit-fullinstall-1.7.8-preview20111206.exe,方便安装到不同的目录,我看到同样的问题与那个实例).

我遇到了ssh-agent的问题,ssh-add总是报告:“无法打开与身份验证代理的连接.”

不幸的是,ssh-add没有给我任何关于它遇到的错误的进一步细节.当它尝试连接到套接字时感觉它超时,但它实际上并不承认这是问题,并且ssh-agent的行为就像它正常运行一样.考虑到这种组合让我怀疑是一个权限问题,但我不知道在哪里我会调查那种问题(我没有看到任何我认为在Windows事件日志中有意义的东西).

此错误消息让我感到困惑:如果我的环境变量设置不正确,我有理由相信我会收到此错误消息,但我有理由相信我已正确设置了环境变量.我有理由相信,如果我的环境变量引用了一个没有运行的ssh-agent实例,我可能会收到此错误消息,但我只有一个ssh-agent实例运行,它与我在环境变量中看到的相匹配.这是可重复的.我已经开始(并最终关闭)了几十个ssh-agent实例,使用的技术包括ssh-agent>的?/ .ssh /环境; . ?/ .ssh / environment,以及eval`ssh-agent`和ssh-agent bash等等……我无法通过msys ssh-add连接到msys ssh-agent.

bash-3.1$ps | grep ssh-agent
    10304       1   10304      10304    ?  500 09:01:24 /bin/ssh-agent
bash-3.1$bash -c 'set | grep SSH_A'
BASH_EXECUTION_STRING='set | grep SSH_A'
SSH_AGENT_PID=10304
SSH_AUTH_SOCK=/tmp/ssh-oAFwa11048/agent.11048
bash-3.1$time ssh-add -L
Could not open a connection to your authentication agent.

real    0m10.730s
user    0m0.000s
sys     0m0.015s
bash-3.1$wc /tmp/ssh-oAFwa11048/agent.11048
      0       3      52 /tmp/ssh-oAFwa11048/agent.11048
bash-3.1$cat /tmp/ssh-oAFwa11048/agent.11048; echo
!<socket >59261 060A4541-9831B739-519220DE-57936738
bash-3.1$

我并不关心任何脚本编写 – 我相信如果我能从命令行获得ssh-add工作,我可以编写脚本…

另请注意,ssh-add使用的10秒实时发出“无法打开…”消息.

而且,我在这里使用当前版本的Windows 7.并且,我也安装了cygwin,但是当我使用msys时它不在我的路上.任务管理器告诉我,我只有一个ssh-agent实例正在运行.正在运行的ssh-agent是msys ssh-agent,是从msysgit的bash提示符启动的(没有来自cygwin的路径). ssh密钥是使用cygwin的ssh-keygen生成的,但是表面测试向我显示msys ssh实用程序对文件没有任何问题. ssh-agent没有给我任何错误消息或警告.

我可以使用cygwin的ssh-agent,但混合cygwin和msys会引入其他复杂性(你可以从我对这个问题的描述中看到一些),我试图让msys在没有任何来自cygwin的情况下工作.

我需要做些什么来找出为什么msys ssh-add不起作用? (或者:我需要做些什么才能使ssh-add正常工作?)

解决方法

我不能告诉你为什么和为什么,但我可以告诉你我尝试了什么,最终解决了什么.
在git bash中:

exec ssh-agent bash

然后(在更改的shell中):

ssh-add

这在一定程度上起作用,我只需输入一次密码,但我失去了正常的外观.经过一些搜索后,我在this Github help page上找到了一个.bashrc脚本.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读