ubuntu中ssh, git公私钥问题

本文介绍了一个在Ubuntu上使用Git时遇到的SSH公钥认证失败的问题,并详细解释了问题的原因在于sudo命令导致的公钥路径不同。最后提供了两种解决方案:一种是将公钥复制到正确的路径下;另一种是使用sudo重新生成SSH密钥。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天使用git, 在windows上一切正常, 但在Ubuntu上安装好git后,出现如下问题:
sudo ssh -T git@github.com 提示 Permission denied (publickey).

sudo git clone git@github.com:xiaomu/xmscs.git
提示:
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

而"git clone git@github.com:xiaomu/xmscs.git" 不在~/ 目录下, 需要 sudo 的写权限


分析知
直接使用 ssh-keygen命令产生的公私钥是存放在当前用户的 ~/.ssh/目录下的;
但使用 sudo 命令时, 却是去 /root/.ssh/ 下查找相应文件, 所以验证失败;

解决方法: 
1) 拷贝到相应文件下;
2) 用 sudo ssh-keygen 生成;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值