【问题标题】:vagrant setup throws Permission denied (publickey) when cloning git克隆 git 时 vagrant setup 抛出 Permission denied (publickey)
【发布时间】:2016-01-05 18:11:49
【问题描述】:

我正在尝试在给定 Vagrantfile 的客户上运行 vagrant setup 以将他的 puppet 项目设置到我的开发环境中,我以前从未使用或听说过 Vagrant,

它会引发以下错误

REPO: /var/www/project/project-puppet/deploy/vagrant/hiera/common
SETUP: Cloning ssh://git@source.sanoma.com:7999/devops/hiera-common.git 
Cloning into '/var/www/project/project-puppet/deploy/vagrant/hiera/common'... 
Permission denied (publickey). 
fatal: Could not read from remote repository.

Please make sure you have the correct access rights and the repository exists.

There was an error loading a Vagrantfile. The file being loaded
and the error message are shown below. This is usually caused by
a syntax error.

Path: /var/www/project/project-puppet/Vagrantfile
Line number: 113
Message: Errno::ENOENT: No such file or directory - /var/www/project/project-puppet/deploy/vagrant/hiera/common

P.S:我使用的是 Ubuntu 15.04

和流浪者 1.7.4

【问题讨论】:

  • setup 不是 vagrant 的公认选项 - 您可能想知道您正在使用哪个版本 (vagrant version) 和插件(如果有)(特别是提供此新选项的插件) ) 你可以运行vagrant plugin list 也可以分享你的 Vagrantfile 可能会帮助其他人支持你
  • 来自虚拟机,你能不能git clone ssh://git@source.sanoma.com:7999/devops/hiera-common.git - 如果你有同样的错误,有很多文章讨论过这个问题
  • 您似乎没有远程存储库的读取权限。请您的客户允许您访问它。他们将需要您的公共 SSH 密钥(通常可以在您的主目录中的 .ssh/id_rsa.pub.ssh/id_dsa.pub 下找到。
  • @Oldskool 实际上我没有钥匙,他们说do you have defined your SSH key in your profile? 所以我认为这会解决问题
  • @riksof-zeeshan 似乎是问题所在,是的。我在下面添加了更多详细信息的答案。

标签: git ubuntu vagrant


【解决方案1】:

首先,你有拉取权限吗? 如果是,您是否设置了 ssh 密钥以通过 ssh 连接访问此存储库?如果没有,请设置它。

关于设置 ssh 访问的 github 指南。 (不同的 git 主机类似)

ssh key generation

【讨论】:

  • riksof,您需要将生成的整个公钥块添加到您的帐户配置文件中,无论它是哪个 git 主机。确保您的个人资料具有正确的公共 ssh 密钥。大多数 git 托管站点都有 ssh 密钥生成指南。如果您确定 SSH 已正确完成并且您仍然遇到相同的问题,则可能是其他一些身份验证问题。类似情况参考这里stackoverflow.com/questions/18551556/…
【解决方案2】:

您似乎无权访问远程存储库,因为它无法识别/找到您的 SSH 密钥。你应该有一个像~/.ssh/id_rsa.pub~/.ssh/id_dsa.pub 这样的文件。

如果您不这样做,您可以通过从控制台运行 ssh-keygen -t rsa 创建一个新密钥。只需按照这些步骤操作,您的 homedir 中就会有一个 .ssh/id_rsa.pub 文件。

确保您的客户获得该公钥(不要发送您的私钥(id_rsa 文件),这仅供您使用/查看)。一旦他们拥有它并允许它访问存储库,您应该能够克隆它。

【讨论】:

  • 好吧,我自己将 pub 密钥添加到了 git,因为我有写权限,但我仍然有同样的问题。
  • 注意:对我来说,实际上我必须注销并重新登录才能在 vagrant 用户的配置文件中找到新生成的密钥(又名“vagrant reload”)
猜你喜欢
  • 2018-05-17
  • 1970-01-01
  • 2015-12-02
  • 2013-10-13
  • 2019-01-25
  • 2016-10-04
  • 2021-09-23
  • 2011-02-08
相关资源
最近更新 更多