2017-03-06 81 views
0

我试图安装西纳特拉和我继续收到此错误:You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory安装rbenv后如何解决gem权限错误?

感谢“Installing gem or updating RubyGems fails with permissions error”我装rbenv。我遵循guide并设置了我的全球红宝石版本等,但当我尝试安装宝石时,我仍然遇到同样的错误。当我运行gem environment时,RubyGems的安装目录仍然是系统Ruby目录。

我应该更新GEM_PATH?由于rbenv指南没有提到任何有关这方面的信息,有些事情让我觉得我的rbenv安装仍然存在问题。

有人能帮我解决这个问题吗?

+0

如果您使用'sudo',它会工作吗? – whodini9

+0

我想你必须使用chmod作为Gems目录 –

+0

不要盲目地使用'chmod'。查看链接问题的选定答案。 –

回答

0

您没有向我们展示您正在使用的命令,但它闻起来像您使用sudo来安装Sinatra。不要用rbenv或RVM托管的Rubies来做到这一点。

就像在the linked question中一样,使用rbenv或RVM可以在您的用户空间中拥有一个或多个Rubies,您可以在其中修改所有需要的Rubies。这意味着你不需要使用sudo,只需使用gem install ...即可。

你可能会遇到的另一个问题是你的全局Ruby设置为system,这是Apple安装的版本,供你使用,你不想修改,除非你明白为什么它在那里以及它们是什么'正在使用它。 如果你必须改变它,然后sudo将是适当的,但是,用rbenv或RVM管理你的用户空间中的Rubies真的没有理由。

请勿使用chmod来更改供应商安装的宝石的所有权;再次,这是苹果的使用,所以与当地的红宝石有趣,而不是苹果独自一人。

+0

我没有使用chmod或sudo按照您的指示从我链接到的问题。重新启动终端后,情况正常。 – hidekinogo

0

在这种情况下,我退出终端并重新打开后,事情正常工作。可能是一件好事,如果你被困住了,并且确定你已经正确地按照说明操作。在我阅读的资料中没有明确提及,但我认为这是一个很好的做法。