2014-03-13 142 views
2

我在aws EC2中安裝了Ubuntu 12.04。
我只想安裝導軌。
但它顯示此錯誤消息。
這是由gedo env和sudo gem env之間的區別引起的嗎?
有沒有什麼辦法解決這個問題,除了rvm內爆?
使用rvmsudo的風險是什麼?在ubuntu 12.04上安裝gem時出現錯誤aws ec2

Fetching: atomic-1.1.15.gem (100%) 
ERROR: While executing gem ... (Gem::FilePermissionError) 
You don't have write permissions for the /usr/local/rvm/gems/[email protected] directory. 

寶石ENV:

RubyGems Environment: 
    - RUBYGEMS VERSION: 2.2.2 
    - RUBY VERSION: 1.9.3 (2014-02-24 patchlevel 545) [x86_64-linux] 
    - INSTALLATION DIRECTORY: /usr/local/rvm/gems/[email protected] 
    - RUBY EXECUTABLE: /usr/local/rvm/rubies/ruby-1.9.3-p545/bin/ruby 
    - EXECUTABLE DIRECTORY: /usr/local/rvm/gems/[email protected]/bin 
    - SPEC CACHE DIRECTORY: /home/ubuntu/.gem/specs 
    - RUBYGEMS PLATFORMS: 
    - ruby 
    - x86_64-linux 
    - GEM PATHS: 
    - /usr/local/rvm/gems/[email protected] 
    - GEM CONFIGURATION: 
    - :update_sources => true 
    - :verbose => true 
    - :backtrace => false 
    - :bulk_threshold => 1000 
    - "gem" => "--no-ri --no-rdoc" 
    - REMOTE SOURCES: 
    - https://rubygems.org/ 
    - SHELL PATH: 
    - /usr/local/rvm/gems/[email protected]/bin 
    - /usr/local/rvm/rubies/ruby-1.9.3-p545/bin 
    - /usr/local/sbin 
    - /usr/local/bin 
    - /usr/sbin 
    - /usr/bin 
    - /sbin 
    - /bin 
    - /usr/games 
    - /usr/local/rvm/bin 

須藤寶石ENV:

RubyGems Environment: 
    - RUBYGEMS VERSION: 1.8.15 
    - RUBY VERSION: 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux] 
    - INSTALLATION DIRECTORY: /var/lib/gems/1.8 
    - RUBY EXECUTABLE: /usr/bin/ruby1.8 
    - EXECUTABLE DIRECTORY: /usr/local/bin 
    - RUBYGEMS PLATFORMS: 
    - ruby 
    - x86_64-linux 
    - GEM PATHS: 
    - /var/lib/gems/1.8 
    - /home/ubuntu/.gem/ruby/1.8 
    - GEM CONFIGURATION: 
    - :update_sources => true 
    - :verbose => true 
    - :benchmark => false 
    - :backtrace => false 
    - :bulk_threshold => 1000 
    - "gem" => "--no-ri --no-rdoc" 
    - REMOTE SOURCES: 
    - http://rubygems.org/ 

回答

3

這是造成須藤寶石ENV之間的區別寶石ENV?

很可能,rvm Ruby與系統Ruby環境是分開的,不同的。

但是,它看起來像你運行的是RVM紅寶石寶石安裝爲不同的用戶爲/usr/local/rvm/gems所有者和它的子目錄。

你運行rvm gem install的用戶是什麼?

你可以試試這個:

chown -R user-you-want-to-run-command-as.user-you-want-to-run-command-as /usr/local/rvm/gems 

或者也嘗試像你提到rvmsudo。如果您希望更安全,那麼您可能不想要的部分文件可能具有root所有權。

4

rvm被製作成沒有sudo或特定/ sudo權限的情況下使用。 重裝會更值得讚賞。 清理當前的rvm安裝 rvmsudo rvm implode sudo rm -rf /etc/rvmrc /etc/profile.d/rvm.sh /usr/local/rvm 然後關閉所有控制檯/ bashes /終端,然後再次與您想要使用rvm的用戶一起登錄並再次安裝。

相關問題