git ssh: Could not resolve hostname gitee.com:xxx: Name or service not known

生成公钥后,测试是否可以连接码云

sudo -u www ssh -T [email protected]

情况一:输入错误信息

错误:sudo -u www ssh -T [email protected]:xxxx/cms.git

正确:sudo -u www ssh -T [email protected]

情况二:输入命令正确,但还是连接不上

思路:

按照报错的提示,是无法解析访问github.com了。

于是立马访问了下http://github.com网站,没有问题。

检查了下\etc\hosts文件,也没有写死github的地址,那么问题出在哪里呢?

我是通过ssh来提交的,突然想来在添加ssh秘钥后第一次访问的时候,会有一个警告,说明是否要在本地添加一次秘钥并记录hosts地址。

于是找了下ssh记录hosts的地址:/home/www/.ssh/known_hosts(我自己服务器(oneinstack)的地址,大家的可能不一样子)

查看

cat /home/www/.ssh/known_hosts

果然有一段记录如下:

github.com,13.250.177.223 ssh-rsa ....
那么问题就出在这儿了。

把段删除,我是整个known_hosts文件都删除了,因为里显示只有这段

//删除known_hosts文件
rm -rf /home/www/.ssh/known_hosts

删除了,known_hosts找不到了,我是又重新生成一次公钥,生成公钥后记录在码云中添加这个公钥

git ssh: Could not resolve hostname gitee.com:xxx: Name or service not known_第1张图片

 

结论
ssh提交的时候,为了方便会通过写known_hosts文件来记录提交地址,而外网地址是dns控制,实际ip可能会变化导致。

是否要记住写入,就看大家实际情况了。

该问题很多网上给的建议是手动写etc\hosts文件,如果是因为之前有让ssh记录,那么改hosts文件也没有用。

 

参考:

http://keejo.coding.me/git-ssh%E4%B9%8BCould-not-resolve-hostname-github-com%E9%97%AE%E9%A2%98.html

https://www.cnblogs.com/0x4D75/p/10913181.html

https://blog.csdn.net/qianggezhishen/article/details/48732755

你可能感兴趣的:(linux系统,码云)