我的SSH密钥与我的根目录关联,并且没有与每个用户关联。当我尝试将我的密钥添加到heroku时,我得到了这个回复:
skline-mac:~ skline$ heroku keys:add
No ssh public key found in /Users/skline/.ssh/id_[rd]sa.pub. You may want to specify the full path to the keyfile.
这是有道理的,因为我的ssh键实际上位于/var/root/.ssh/id_rsa.pub。我如何告诉heroku在那里寻找我的ssh密钥?
注意,因为我使用以下命令锁定了当前用户的ssh目录:$ chmod 700~ / .ssh和$ chmod 600~ / .ssh / *。我不再知道如何访问这些目录。对不起,我是OSX的新手
此外,当我尝试使用sudo执行相同的命令时,我得到:
skline-mac:~ skline$ sudo heroku keys:add
/Users/skline/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems.rb:861:in `report_activate_error': Could not find RubyGem heroku (>= 0) (Gem::LoadError)
from /Users/skline/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems.rb:255:in `activate'
from /Users/skline/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems.rb:1204:in `gem'
from /Users/skline/.rvm/gems/ruby-1.9.2-p136@rails3tutorial/bin/heroku:18:in `<main>'
注意当我尝试使用heroku密钥时,我也会得到这个错误:添加/var/root/.ssh/id_rsa.pub我收到此错误:
skline-mac:~ skline$ heroku keys:add /var/root/.ssh/id_rsa.pub
/Users/skline/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems.rb:861:in `report_activate_error': Could not find RubyGem heroku (>= 0) (Gem::LoadError)
from /Users/skline/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems.rb:255:in `activate'
from /Users/skline/.rvm/rubies/ruby-1.9.2-p136/lib/ruby/site_ruby/1.9.1/rubygems.rb:1204:in `gem'
from /Users/skline/.rvm/gems/ruby-1.9.2-p136@rails3tutorial/bin/heroku:18:in `<main>'
答案 0 :(得分:2)
最简单地回答你的问题:
heroku keys:add /var/root/.ssh/id_rsa.pub
关于“锁定”您的/~/.ssh
文件夹,这些权限仍然为您(所有者)提供了对其进行读写文件的完全访问权限。
当你运行 请参阅下面的评论进行更正。 sudo heroku keys:add
时,由于与RVM +相关的东西而不是安装了gem的用户,因此它会抛出一个拟合,因此当它尝试加载gem时,它没有找到它。至少,这是我对您分享的输出的快速评估。