2017-03-06 105 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

在這種情況下,我退出終端並重新打開後,事情正常工作。可能是一件好事,如果你被困住了,並且確定你已經正確地按照說明操作。在我閱讀的資料中沒有明確提及,但我認爲這是一個很好的做法。