版本库服务器不能克隆项目到自身吗?

继文件被删除后就重装了unix系统,生成了公钥,能克隆服务器上项目到本地
上面一切都ok.
问题来了:
1: 我要把这个项目部署到这台服务器上去(版本库服务器和我要部署的目标服务器是一台机器)
2: 先 ssh 到我服务器上去, 再克隆项目执行如下:
a) ssh deploy@xxx.xxx.xxx.xxx
b) cd /opt/dev && git clone git@my_app.git
结果出现一错误:
Permission denied (publickey,gssapi-with-mic).
fatal: The remote end hung up unexpectedly
3: 在本地机器上:
cd /opt/dev && git clone git@my_app.git
一切下常,能够从服务器上面克隆下来
4: 查看了本地ssh_config 配置如下:
Host *

ForwardAgent yes
ForwardX11 no
RhostsRSAAuthentication no
RSAAuthentication yes
PasswordAuthentication yes
HostbasedAuthentication no
GSSAPIAuthentication no
GSSAPIDelegateCredentials no
GSSAPIKeyExchange no
GSSAPITrustDNS no
BatchMode no
CheckHostIP yes
AddressFamily any
ConnectTimeout 0
StrictHostKeyChecking ask
IdentityFile ~/.ssh/identity
IdentityFile ~/.ssh/id_rsa
IdentityFile ~/.ssh/id_dsa
Port 22
Protocol 2,1
Cipher 3des
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160
EscapeChar ~
Tunnel no
TunnelDevice any:any
PermitLocalCommand no
VisualHostKey no

可见我的代理设置的是yes,也就是我可以用我本机的key来代理克隆项目到我的目标服务器上面去

疑问:
1: 为什么我能克隆项目到本机,而当我ssh 到服务器上去克隆项目时不行?
2: 我的公钥已经放到了服务器里面,为什么还要我验证?
3: 以前我也遇到过类似的问题,而当我重启电脑后就正常了(我想是我的那个ssh服务没有起来).
4: 网上找了很多方法都说是要把key放上去,问题是我已经放上去了,能登录能克隆.

以上问题很纠结.整了些时间没有头绪了.想请教大家这个情况怎么来处理呢?

1 个回答

  1. 推测大概原因是,密钥没有被添加到 ssh-agent 的高速缓存中
  2. 重启机器之后,ssh-agent服务会重新启动,重新加载~/.ssh/id_rsa下的密钥

解决方案:
在确保当前用户密钥拷贝无误的前提下执行
ssh-add ~/.ssh/id_rsa
ssh-agent
个人意见,不妨一试

你的回答