我正在摆弄 rubygems 和 rvm,它工作得很好,但现在当我尝试安装 gem 时出现错误
gem install Rails错误:同时
执行 gem ... (Errno::EACCES)
权限被拒绝 - /Users/da/.rvm/gems/ruby-1.9.2-p180/gems/bundler-1.0.11/.gitignore
当我执行 sudo 时它可以工作,但我以前从未需要这样做来安装 gem。
$ gem env
RubyGems Environment:
- RUBYGEMS VERSION: 1.6.2
- RUBY VERSION: 1.9.2 (2011-02-18 patchlevel 180) [x86_64-darwin10.7.0]
- INSTALLATION DIRECTORY: /Users/da/.rvm/gems/ruby-1.9.2-p180
- RUBY EXECUTABLE: /Users/da/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
- EXECUTABLE DIRECTORY: /Users/da/.rvm/gems/ruby-1.9.2-p180/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-10
- GEM PATHS:
- /Users/da/.rvm/gems/ruby-1.9.2-p180
- /Users/da/.rvm/gems/ruby-1.9.2-p180@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
$ sudo gem env
RubyGems Environment:
- RUBYGEMS VERSION: 1.6.2
- RUBY VERSION: 1.9.2 (2011-02-18 patchlevel 180) [x86_64-darwin10.7.0]
- INSTALLATION DIRECTORY: /Users/da/.rvm/gems/ruby-1.9.2-p180
- RUBY EXECUTABLE: /Users/danest/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
- EXECUTABLE DIRECTORY: /Users/da/.rvm/gems/ruby-1.9.2-p180/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-10
- GEM PATHS:
- /Users/da/.rvm/gems/ruby-1.9.2-p180
- /Users/da/.rvm/gems/ruby-1.9.2-p180@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
看来您已将 root 用户设置为使用主文件夹中的 rvm 安装。这意味着当您使用 sudo 安装 gem 时,这些文件将属于 root。因此,当您尝试按照自己的方式安装 gem 时,您会收到权限错误。
要修复此问题,您需要将 rvm 文件夹返回给您(我假设,从您的文件路径来看,您的用户名在这里是“da”)...
sudo chown -R da:da /Users/da/.rvm
为了避免将来发生这种情况,我建议将 root 的路径设置为它自己安装的 rvm 或系统 gems。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)